[백준] 1057번 토너먼트

거북이·2023년 1월 15일
0

백준[실버4]

목록 보기
58/91
post-thumbnail

💡문제접근

  • 1 ~ N번까지의 참가자들이 토너먼트를 펼치는데 라운드를 거듭하면서 바뀌는 번호의 변화를 보고 코드를 작성할 수 있었다.

💡테스트케이스

입력

16 8 9

출력

4

  • 참가자 번호 8번의 변화 : 8번 → 4번 → 2번 → 1번 → (결승에서 이길 경우)1번
  • 참가자 번호 9번의 변화 : 9번 → 5번 → 3번 → 2번 → (결승에서 이길 경우)1번

💡코드(메모리 : 30616KB, 시간 : 52ms)

N, kim, im = map(int, input().split())
rnd = 0
while True:
    if kim == im:
        print(rnd)
        break
    else:
        kim -= (kim // 2)
        im -= (im // 2)
        rnd += 1

💡소요시간 : 12m

0개의 댓글