
[ 프로그래머스 ] 순서쌍의 개수(JAVA)
출처 : https://school.programmers.co.kr/learn/courses/30/lessons/120836
프로그래머스
SW개발자를 위한 평가, 교육, 채용까지 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프
programmers.co.kr
문제
순서쌍이란 두 개의 숫자를 순서를 정하여 짝지어 나타낸 쌍으로 (a,b)로 표기합니다. 자연수 n
이 매개변수로 주어질 때 두 숫자의 곱이 n
인 자연수 순서쌍의 개수를 return하도록 solution 함수를 완성해주세요.
제한사항
• ,1 ≤ n ≤ 1,000,000
입출력 예
입출력 예 #1
• n
이 20 이므로 곱이 20인 순서쌍은 (1,20), (2,10), (4,5), (5,4), (10,2), (20,1) 이므로 6을 return 합니다.
입출력 예 #2
• n
이 100이므로 곱이 100인순서쌍은 (1,100),(2,50),(4,25),(5,20),(10,10),(20,5),(25,4),(50,2),(100,1)이므로 9를 return 합니다.
📍 의사 코드
함수 solution(n):
# 1. 순서쌍 개수를 저장할 변수 count 초기화
count ← 0
# 2. 1부터 n까지 반복하면서 a 값을 확인
반복문 (a = 1부터 n까지):
만약 (n이 a로 나누어 떨어진다면): # 즉, a가 n의 약수라면
count를 1 증가 # (a, b) 순서쌍이 유효하므로 증가
# 3. 최종 순서쌍 개수 반환
반환 count
💡내가 푼 방식
class Solution {
public int solution(int n) {
int count = 0;
for(int i=1; i<=n; i++){
if(n%i==0){
count++;
}
}
return count;
}
}
✔️ for문을 사용해 1부터 n까지 반복합니다.
✔️ n을 i로 나누었을 때 나머지가 0이면, i는 n의 약수이므로 answer 값을 1 증가시킵니다.
✔️ 반복이 끝나면 answer를 반환하여 (a,b) 순서쌍 개수를 구합니다.
'프로그래머스' 카테고리의 다른 글
[프로그래머스] 머쓱이보다 키 큰 사람(JAVA) (0) | 2025.03.20 |
---|---|
[프로그래머스] 직각삼각형 출력하기 (JAVA) (0) | 2024.04.03 |
[프로그래머스] 특정 문자 제거하기(JAVA) (0) | 2024.03.27 |
[프로그래머스] 중앙값 구하기 (JAVA) (0) | 2024.03.22 |
[프로그래머스] 분수의 덧셈(최대 공약수 구하기 / 유클리드 호제법) (0) | 2024.03.21 |

[ 프로그래머스 ] 순서쌍의 개수(JAVA)
출처 : https://school.programmers.co.kr/learn/courses/30/lessons/120836
프로그래머스
SW개발자를 위한 평가, 교육, 채용까지 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프
programmers.co.kr
문제
순서쌍이란 두 개의 숫자를 순서를 정하여 짝지어 나타낸 쌍으로 (a,b)로 표기합니다. 자연수 n
이 매개변수로 주어질 때 두 숫자의 곱이 n
인 자연수 순서쌍의 개수를 return하도록 solution 함수를 완성해주세요.
제한사항
• ,1 ≤ n ≤ 1,000,000
입출력 예
입출력 예 #1
• n
이 20 이므로 곱이 20인 순서쌍은 (1,20), (2,10), (4,5), (5,4), (10,2), (20,1) 이므로 6을 return 합니다.
입출력 예 #2
• n
이 100이므로 곱이 100인순서쌍은 (1,100),(2,50),(4,25),(5,20),(10,10),(20,5),(25,4),(50,2),(100,1)이므로 9를 return 합니다.
📍 의사 코드
함수 solution(n):
# 1. 순서쌍 개수를 저장할 변수 count 초기화
count ← 0
# 2. 1부터 n까지 반복하면서 a 값을 확인
반복문 (a = 1부터 n까지):
만약 (n이 a로 나누어 떨어진다면): # 즉, a가 n의 약수라면
count를 1 증가 # (a, b) 순서쌍이 유효하므로 증가
# 3. 최종 순서쌍 개수 반환
반환 count
💡내가 푼 방식
class Solution {
public int solution(int n) {
int count = 0;
for(int i=1; i<=n; i++){
if(n%i==0){
count++;
}
}
return count;
}
}
✔️ for문을 사용해 1부터 n까지 반복합니다.
✔️ n을 i로 나누었을 때 나머지가 0이면, i는 n의 약수이므로 answer 값을 1 증가시킵니다.
✔️ 반복이 끝나면 answer를 반환하여 (a,b) 순서쌍 개수를 구합니다.
'프로그래머스' 카테고리의 다른 글
[프로그래머스] 머쓱이보다 키 큰 사람(JAVA) (0) | 2025.03.20 |
---|---|
[프로그래머스] 직각삼각형 출력하기 (JAVA) (0) | 2024.04.03 |
[프로그래머스] 특정 문자 제거하기(JAVA) (0) | 2024.03.27 |
[프로그래머스] 중앙값 구하기 (JAVA) (0) | 2024.03.22 |
[프로그래머스] 분수의 덧셈(최대 공약수 구하기 / 유클리드 호제법) (0) | 2024.03.21 |