반응형
#1
scanner로 입력받기
int 배열/ for문 / i = 인수찾기 j = 인덱스
import java.util.*;
public class Main {
public static void main(String[] args) {
Scanner scan = new Scanner(System.in); //입력
int N = scan.nextInt();
int K = scan.nextInt();
int j =1 ;
int[] ansN = new int[N]; //배열
int size = ansN.length;
for (int i=1; i<size+1;i++){
if (N%i == 0){
ansN[j-1] = i;
j++;
}
}
System.out.println(ansN[K-1]);
}}
#2
bufferedReader/bufferedwriter - 버퍼 이용으로 입출력 효울 좋음 (버퍼로 묶어서 한번에 보내는게 효율적)
bufferedReader : 엔터로 구분. string
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
class Main {
public static void main(String[] args) throws IOException { //예외처리
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
String[] problemInfo = br.readLine().split(" "); //readline()으로 라인 단위로 읽기
int N = Integer.parseInt(problemInfo[0]); //parseInt() : string -> int
int K = Integer.parseInt(problemInfo[1]);
System.out.println(getKthDivisor(N, K));
br.close(); //닫기
}
static int getKthDivisor(int devidedNum, int K) {
int divisorCnt = 0; // n번쨰 인수
for (int i = 1; i <= devidedNum; i++) {
if (devidedNum % i > 0) continue; //인수가 아니면 pass
if (++divisorCnt == K) return i;//
}
return 0;
}
}
반응형
'백준_Java' 카테고리의 다른 글
2588_형변환/자릿수로 쪼개기 (0) | 2021.08.17 |
---|---|
1000_입력받기 (0) | 2021.08.17 |
10171_역슬래쉬 출력 (0) | 2021.08.17 |
10718_for문 출력 (0) | 2021.08.17 |
2557_hello world 출력 (0) | 2021.08.17 |