Computer Science/Algorithm Problem

백준] 1057 - 토너먼트

TwinParadox 2018. 3. 12. 22:32
728x90

시간 제한 : 2초

메모리 제한 : 128MB




입력

첫째 줄에 참가자의 수 N과 1 라운드에서 김지민의 번호와 임한수의 번호가 순서대로 주어진다. N은 100,000보다 작거나 같은 자연수이고, 김지민의 번호와 임한수의 번호는 N보다 작거나 같은 자연수이고, 서로 다르다.




출력

첫째 줄에 김지민과 임한수가 대결하는 라운드 번호를 출력한다. 만약 서로 대결하지 않을 때는 -1을 출력한다.




소스코드

#include <iostream>
using namespace std;
int main(void)
{
	int n, a, b, i;
	cin >> n >> a >> b;
	a--, b--;
	for (i = 0; a - b != 0; i++)
		a /= 2, b /= 2;
	cout << i;
}




Tip

int형의 나눗셈의 특성을 이해하고 시뮬레이션하면 답을 구할 수 있다.


728x90
728x90