티스토리 뷰

728x90

https://www.acmicpc.net/problem/14562

 

14562번: 태권왕

첫째 줄에 테스트 케이스의 수 C(1 ≤ C ≤ 100)이 주어진다. 둘째 줄부터 C줄에 걸쳐 테스트 케이스별로 현재 점수 S와 T가 공백을 사이에 두고 주어진다. (1 ≤ S < T ≤ 100)

www.acmicpc.net

 

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
from collections import deque
 
 
def bfs(S, T):
    dq = deque()
    dq.append((S, T, 0))
    chk = [-1* 200
    while dq:
        node, t, c = dq.popleft()
        if node <= t and chk[node] == -1:
            dq.append((node * 2, t + 3, c + 1))
            dq.append((node + 1, t, c + 1))
            if node == t:
                return c
 
 
= int(input())
for _ in range(C):
    s, t = map(int, input().split())
    print(bfs(s, t))
cs

 

댓글