본문 바로가기

Algorithm judge/Backjoon

[백준 2501번] 약수 구하기

 

 

 

2501번: 약수 구하기

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

www.acmicpc.net

 

먼저 손 코딩으로 접근했다.

 

문제 접근법은 아래와 같다.

 

  • 반복문을 진행하며, i가 n이하일 경우에만 진행한다.

  • 약수를 발견할 경우 카운팅을 한다.

  • 만약 카운팅한 수가 k와 동일할 경우 해당 수를 출력하고 메서드를 종료한다.

  • 약수가 존재하지 않을 경우 return에 접근하지 않기에 맨 아래에 0을 넣어 출력한다.

 

 

  • Scanner가 아닌 BufferedReader를 사용해 처리 속도를 더욱 빠르게 하였다.

  • 마지막에 close( )를 안해주었지만 조건 만족 후 return으로 메서드를 종료하는데, close( )가 유의미한지 학습할 필요가 있을듯 하다.