Python/코딩테스트
[프로그래머스/python] 코딩테스트 연습 Lv.2 예상 대진표
김과분
2024. 1. 8. 11:16
728x90
문제

일반 토너먼트 개념과 같음. A, B가 토너먼트로 진행하는 게임에서 만날 라운드 수를 return
입출력 예
Solution
def solution(n,a,b):
answer = 1
while((abs(a-b)==1 and min(a, b)%2==1) is False):
a = int((a+1)/2)
b = int((b+1)/2)
answer+=1
return answer
answer: 라운드 수, 1 라운드부터 시작
N-1과 N이 붙게되는 구조이되, N-1이 홀수(N이 짝수)여야 붙을 수 있으므로 while문에 위 조건이 성립될 때까지 반복
성립하지 않으면 아직 붙지 않는 것이고, 항상 이긴다는 가정을 하기 때문에 다음 라운드에 진출할 시 본인이 바뀌는 번호 할당 + 다음 라운드 카운트
조건이 성립하면 라운드 수 return
728x90