1. 문제
문제 설명
순서쌍이란 두 개의 숫자를 순서를 정하여 짝지어 나타낸 쌍으로 (a, b)로 표기합니다. 자연수 n이 매개변수로 주어질 때 두 숫자의 곱이 n인 자연수 순서쌍의 개수를 return하도록 solution 함수를 완성해주세요.
제한사항
- 1 ≤ n ≤ 1,000,000
입출력 예
n | result |
20 | 6 |
100 | 9 |
2. 풀이과정
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문을 한 후 if문으로 처리해줬는데 이렇게 하면 시간초과로 문제가 해결되지 않는다는 점이 있어 코드를 수정했다.
class Solution {
public int solution(int n) {
int count = 0;
for(int i=1; i<=n; i++) {
for(int j=1; j<=n; j++) {
if(i * j == n) count++;
}
}
return count;
}
}
'Coding Test > 프로그래머스[JAVA]' 카테고리의 다른 글
[프로그래머스 Lv0.] 120849번 모음 제거 (JAVA) (0) | 2023.07.20 |
---|---|
[프로그래머스 Lv0.] 120834번 외계행성의 나이 (JAVA) (0) | 2023.07.20 |
[프로그래머스 Lv0.] 120825번 문자 반복 출력하기 (JAVA) (0) | 2023.07.19 |
[프로그래머스 Lv0.] 120823번 직각삼각형 출력하기 (JAVA) (0) | 2023.07.19 |
[프로그래머스 Lv0.] 120818번 옷가게 할인 받기 (JAVA) (0) | 2023.07.19 |