https://www.acmicpc.net/problem/2501
간단하다.
for 문을 통해 N 의 약수를 구하고, 약수를 찾을 때 마다 count 를 하나 씩 늘린다.
이때, count 가 K 와 일치하는 순간의 약수를 출력한다.
만약 약수의 개수가 K 보다 작다면,
count == K 라는 조건문에 걸리지 않아서 for 문을 그냥 빠져나올 것이다.
그래서 빠져나오는 경우를 대비해 마지막에 0 을 출력해준다.
import java.io.*;
import java.util.StringTokenizer;
public class Main {
public static void main(String[] args) throws IOException{
// TODO Auto-generated method stub
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
StringTokenizer st = new StringTokenizer(br.readLine());
int N = Integer.parseInt(st.nextToken());
int K = Integer.parseInt(st.nextToken());
int count = 0;
for(int i=1; i<=N; i++)
{
if(N % i == 0)
count++;
if(count == K)
{
System.out.print(i);
return;
}
}
System.out.print(0);
}
}
- 느낀 점
간단하다.
'[JAVA] > 자바[JAVA] 백준' 카테고리의 다른 글
BOJ(백준 온라인 저지) 15804번 with 자바[JAVA] (0) | 2024.03.18 |
---|---|
BOJ(백준 온라인 저지) 9506번 with 자바[JAVA] (0) | 2024.03.18 |
BOJ(백준 온라인 저지) 5086번 with 자바[JAVA] (0) | 2024.03.18 |
BOJ(백준 온라인 저지) 1406번 with 자바[JAVA] (0) | 2022.01.18 |
BOJ(백준 온라인 저지) 1874번 with 자바[JAVA] (0) | 2022.01.18 |