본문 바로가기

백준

[백준] 1300 K번째 수 [자바]

 

 


https://st-lab.tistory.com/281?category=948182 

 

[백준] 1300번 : K번째 수 - JAVA [자바]

https://www.acmicpc.net/problem/1300 1300번: K번째 수 세준이는 크기가 N×N인 배열 A를 만들었다. 배열에 들어있는 수 A[i][j] = i×j 이다. 이 수를 일차원 배열 B에 넣으면 B의 크기는 N×N이 된다. B를 오..

st-lab.tistory.com

 

 


import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.StringTokenizer;

public class Main {
 	public static void main(String arg[]) throws IOException {
 		BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
 		StringBuilder sb = new StringBuilder();
 		long N = Long.parseLong(br.readLine());
 		int K = Integer.parseInt(br.readLine());
 		long left = 1;
 		long right = K;
 		while(left < right) {
 			long mid = (left + right) >>> 1;
 			int cnt = 0;
 			for(int i = 1; i <= N; i++) {
 				cnt += Math.min(mid/i, N);
 			}
 			
 			if(K <= cnt) {
 				right = mid;
 			}
 			else {
 				left = mid + 1;
 			}
 		}
 		System.out.println(left);
 	}
}