BOJ 2501 약수구하기
- 4번의 문제를 틀리고 난 뒤에 성공을 했다.
- 같은 실수를 반복하지 않기 위해 기록을 남긴다.
자연수 N과 K가 주어졌을 때, N의 약수들 중 K 번째로 작은 수를 출력하는 프로그램을 작성
만일 N의 약수의 개수가 K개보다 적어서 K번째 약수가 존재하지 않을 경우 0을 출력
- N의 약수의 개수가 K개보다 적다는 생각을 못했음. 다양한 경우의 수가 존재하지만 예제 입력만 확인한채 제출한 점.
- N의 약수의 개수가 K개보다 적어서 K번째 약수가 존재하지 않을 경우 0을 출력해야 하는데 내 마음대로 -1을 출력함
- 문제를 잘 읽어보고 풀어야 겠다.
- 예제 뿐만 아니라 몇 개의 테스트 케이스(경계값)를 더 생각한뒤 테스트 해보고 제출해야겠다.
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
int n = sc.nextInt();
int k = sc.nextInt();
for (int i = 1; i <= n; i++) {
if ((n%i) == 0) {
k--;
if (k == 0) {
System.out.println(i);
return;
}
}
}
System.out.println(0);
}
}
'알고리즘' 카테고리의 다른 글
백준 1181 단어 정렬 (0) | 2019.03.02 |
---|---|
BOJ 1620번, 나는야 포켓몬 마스터 이다솜 (0) | 2019.02.04 |
CodeForces, 1A. Theatre Square (0) | 2019.01.18 |
선택 정렬 selection sort (1) | 2018.12.18 |