코딩/알고리즘
005. 예상 대진표
Hoooon22_코딩거북이_
2021. 4. 14. 14:19
728x90
- 사용 언어 : C#
- 체감 난이도 : 쉬움
- 활용 : 대진표? 알고리즘
<작성한 코드>
public int solution(int n, int a, int b)
{
int answer = 1;
int x = a, y = b;
while (true)
{
// 같은 라운드에서 만나는지
if (Math.Abs(x-y) == 1 && Math.Max(x,y) % 2 ==0)
{
break;
}
// 그렇지 않다면, a와 b를 다음 라운드로
if (x % 2 == 0)
x /= 2;
else
x = (x + 1) / 2;
if (y % 2 == 0)
y /= 2;
else
y = (y + 1) / 2;
answer++;
}
return answer;
}
반으로 쪼개고 쪼개면서 서로 만나면 탈출하고 Round를 return한다.