Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- from collections import deque
- start = int(input())
- end = int(input())
- visited = dict()
- q = deque([start])
- visited[start] = -1
- def neighbors(num):
- res = []
- if num // 1000 < 9:
- res.append(num + 1000)
- if num % 10 > 1:
- res.append(num - 1)
- res.append(num // 10 + 1000 * (num % 10))
- res.append(num // 1000 + 10 * (num % 1000))
- return res
- while q:
- cur = q.popleft()
- if cur == end:
- break
- for num in neighbors(cur):
- if num not in visited:
- q.append(num)
- visited[num] = cur
- res = []
- while cur != -1:
- res.append(cur)
- cur = visited[cur]
- for num in res[::-1]:
- print(num)
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement