-
[BOJ]2501_JAVA_약수구하기알고리즘문제풀이/백준 2021. 9. 20. 11:04
--문제--
https://www.acmicpc.net/problem/2501
2501번: 약수 구하기
첫째 줄에 N과 K가 빈칸을 사이에 두고 주어진다. N은 1 이상 10,000 이하이다. K는 1 이상 N 이하이다.
www.acmicpc.net
--문제 접근--
약수 구하기 문제로 N과 K가 주어질 때 N의 약수 K번 때에 대한 답을 찾는 문제였습니다.
단순 구현 문제였는데 문제를 풀면서 배웠던점은 BufferedWriter와 BufferedReader를 이용하여 문제를 풀어봤는데 BufferedWriter를 사용할 때에 int형을 출력할 때에 형 변환을 진행해 줘야 하는 사실을 알았습니다.
--코드--
package 준비운동; import java.io.BufferedReader; import java.io.BufferedWriter; import java.io.IOException; import java.io.InputStreamReader; import java.io.OutputStreamWriter; import java.util.StringTokenizer; public class BOJ_2501_약수구하기 { public static void main(String[] args) throws IOException { BufferedReader br=new BufferedReader(new InputStreamReader(System.in)); BufferedWriter bw=new BufferedWriter(new OutputStreamWriter(System.out)); StringTokenizer st=new StringTokenizer(br.readLine()); int N=Integer.parseInt(st.nextToken()); int K=Integer.parseInt(st.nextToken()); int cnt=0; boolean check=false; for(int i=1;i<=N;i++) { if(N%i==0) { cnt++; if(cnt==K) { bw.write(String.valueOf(i)); check=true; } } } if(!check)bw.write(String.valueOf(0)); bw.flush(); bw.close(); } }
'알고리즘문제풀이 > 백준' 카테고리의 다른 글
[BOJ]14888_Java_연산자 끼워넣기 (0) 2021.10.16 [BOJ]3460_이진수_Java (0) 2021.09.24 [BOJ]10942_팰린드롬_Java (0) 2021.07.29 [BOJ]9466_팀프로젝트_Java (0) 2021.07.24 [BOJ]9252_LCS2_Java (0) 2021.07.21