[백준 1072] 게임

Junyoung Park·2022년 3월 24일
0

코딩테스트

목록 보기
313/631
post-thumbnail

1. 문제 설명

게임

2. 문제 분석

이분 탐색을 통해 문제를 풀려고 노력했다. 값이 바뀌지 않는다면 -1, 그렇지 않는다면 mid 값을 기록한 ans를 출력하자.

3. 나의 풀이

import sys

x, y = map(int, sys.stdin.readline().rstrip().split())

z = y*100//x

left, right = 1, 1000000000
INF = sys.maxsize
ans = INF
while left <= right:
    mid = (left + right) // 2

    win = y + mid
    new_z = (win * 100) // (x + mid)

    if new_z > z:
        right = mid - 1
        ans = min(ans, mid)
    else:
        left = mid + 1

if ans == INF: print(-1)
else: print(ans)
profile
JUST DO IT

0개의 댓글