문제 풀이/Codeforces
2020. 6. 5.
Codeforces Round #647 (Div. 1, Div.2) - Thanks, Algo Muse!
A - Johnny and Ancient Computer Problem - A - Codeforces codeforces.com 수 \(a,b\)가 주어진다. \(a\)에 다음과 같은 연산을 해서 \(b\)로 만들 수 있는지, 가능하면 최소 몇번의 연산으로 가능한지 알아내야 한다. 1. 2를 곱한다 2. 4를 곱한다 3. 8을 곱한다 4. 2로 나눠 떨어진다면, 2로 나눈다 5. 4로 나눠 떨어진다면, 4로 나눈다 6. 8로 나눠 떨어진다면, 8로 나눈다 먼저 큰 수가 작은 수로 나눠 떨어지지 않는다면, 불가능하다. 나눠 떨어진다면, 큰 수를 작은 수로 나눈 값을 \(x\)라고 하자. \(x\)가 2의 거듭제곱꼴이 아니라면 불가능하다. 2의 거듭제곱 꼴이라면, \(x = 2^n\)이라고 했을 때, \(\..