Coding Test/Python
[Programmers] 예상 대진표 - 12985
ro_rdil_31
2024. 10. 31. 23:48
728x90
나누기해서 round()를 사용하지 않고 (a+1)//2 처럼 반올림과 같은 효과를 내기.
Question
처음 라운드에서 A번을 가진 참가자는 경쟁자로 생각하는 B번 참가자와 몇 번째 라운드에서 만나는지 궁금해졌습니다. 게임 참가자 수 N, 참가자 번호 A, 경쟁자 번호 B가 함수 solution의 매개변수로 주어질 때, 처음 라운드에서 A번을 가진 참가자는 경쟁자로 생각하는 B번 참가자와 몇 번째 라운드에서 만나는지 return 하는 solution 함수를 완성해 주세요. 단, A번 참가자와 B번 참가자는 서로 붙게 되기 전까지 항상 이긴다고 가정합니다.
Code
def solution(n,a,b):
rnd = 0
while b!=a:
rnd += 1
a,b = (a+1)//2, (b+1)//2
return rnd

now me
On my github
728x90