728x90
조건
게임을 최소! 몇번해야하냐고 해서 left값을 출력
z가 변하지 않는다면 -1 출력
import java.util.Scanner;
public class 개임 {
public static long x,y,z;
public static void main(String[] args) {
Scanner scan = new Scanner(System.in);
x = scan.nextLong();
y = scan.nextLong();
z = y * 100 / x;
if(z >= 99)
System.out.println(-1);
else {
long left = 0;
long right = x;
while(left <= right) {
long mid = (left + right) / 2;
if(z < 100 * (y + mid) / (x + mid)) {
right = mid - 1;
}else {
left = mid + 1;
}
}
System.out.println(left);
}
scan.close();
}
}
답안 참고
728x90
'CS > Algorithm' 카테고리의 다른 글
[ JAVA / 백준 : 2776 ] 암기왕 (0) | 2021.08.16 |
---|---|
[ JAVA / 백준 : 2512] 예산 (0) | 2021.08.16 |
[JAVA / 백준 : 2805] 나무자르기 (0) | 2021.08.12 |
[ JAVA / 백준 : 1654 ] 랜선자르기 (0) | 2021.08.12 |
[ JAVA / 백준 : 1920 ] 수 찾기 (0) | 2021.08.11 |