https://www.acmicpc.net/problem/1057
#include <iostream>
#include <math.h>
using namespace std;
int main() {
int n;
int m1, m2;
cin >> n >> m1 >> m2;
n--;
m1--;
m2--;
int tmp = 0;
while (1) {
if (n >= 2)
{
n /= 2;
tmp++;
}
else
break;
}
int round = tmp + 1;
int result = 0, flag = 0;
while (flag != 1) {
(m1 / (int)pow(2, tmp)) == (m2 / (int)pow(2, tmp)) ? result++ : flag = 1;
tmp--;
}
round -= result;
cout << round << endl;
}
'Programming > BaekJoon' 카테고리의 다른 글
[C++] 백준 4948번 : 베르트랑 공준 (0) | 2019.04.14 |
---|---|
[C++] 백준 2309번 : 일곱 난쟁이 (0) | 2019.04.12 |
[C++] 백준 1076번 : 저항 (0) | 2019.04.02 |
[C++] 백준 1037번 : 약수 (0) | 2019.04.02 |
[C++] 백준 1977번 : 완전제곱수 (0) | 2019.04.02 |