본문 바로가기

백준

[백준] 2501번 : 약수 구하기 [Java]

https://www.acmicpc.net/problem/2501

 

2501번: 약수 구하기

첫째 줄에 N과 K가 빈칸을 사이에 두고 주어진다. N은 1 이상 10,000 이하이다. K는 1 이상 N 이하이다.

www.acmicpc.net

 


 

 

● 문제

[백준] 2501번

 

 

 

 

● 접근 방법

n과 k의 범위가 크지 않아서 단순 반복으로 판단하여도 쉽게 해결되는 문제.

n을 1~n로 나눈 나머지가 0일때 cnt를 1 카운트 시켜주고, cnt가 k일때 출력해주면 끝나는 쉬운 문제.

 

 

 

 

● 문제 풀이

 

import java.util.Scanner;

public class Main {
	public static void main(String[] args) {
		int cnt = 0;
		int answer = 0;
		
		//입력
		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) cnt++;
			
			if(cnt == k) {
				answer = i;
				break;
			}
		}
		
		//출력
		System.out.println(answer);
		
	}
}