λ¬Έμ
μλΉμ΄λ λμκ³Ό μ¨λ°κΌμ§μ νκ³ μλ€. μλΉμ΄λ νμ¬ μ N(0 ≤ N ≤ 100,000)μ μκ³ , λμμ μ K(0 ≤ K ≤ 100,000)μ μλ€. μλΉμ΄λ κ±·κ±°λ μκ°μ΄λμ ν μ μλ€. λ§μ½, μλΉμ΄μ μμΉκ° XμΌ λ κ±·λλ€λ©΄ 1μ΄ νμ X-1 λλ X+1λ‘ μ΄λνκ² λλ€. μκ°μ΄λμ νλ κ²½μ°μλ 1μ΄ νμ 2*Xμ μμΉλ‘ μ΄λνκ² λλ€.
μλΉμ΄μ λμμ μμΉκ° μ£Όμ΄μ‘μ λ, μλΉμ΄κ° λμμ μ°Ύμ μ μλ κ°μ₯ λΉ λ₯Έ μκ°μ΄ λͺ μ΄ νμΈμ§ ꡬνλ νλ‘κ·Έλ¨μ μμ±νμμ€.
μ λ ₯
첫 λ²μ§Έ μ€μ μλΉμ΄κ° μλ μμΉ Nκ³Ό λμμ΄ μλ μμΉ Kκ° μ£Όμ΄μ§λ€. Nκ³Ό Kλ μ μμ΄λ€.
μΆλ ₯
μλΉμ΄κ° λμμ μ°Ύλ κ°μ₯ λΉ λ₯Έ μκ°μ μΆλ ₯νλ€.
μμ μ λ ₯ 1 볡μ¬
5 17
μμ μΆλ ₯ 1 볡μ¬
4
# νμ΄ λ°©λ²
μ΅λ¨μκ° λ¬Έμ μ΄κΈ° λλ¬Έμ bfsμ κ·Ό
λ©λͺ¨λ¦¬κ° λ무 λ§μ΄ μ‘μλ¨Ήλκ±° μλκ° μΆκΈ°λ νλΉ..
λ€μ΅μ€νΈλΌλ‘λ ν μ μλ€κ³ μΆνμ λ°°μ
dist λ°°μ΄μ λ μ¬λ¦¬μ§ λͺ»ν΄μ μ€λ κ±Έλ Έλ€.. μ΄λ κ² νμ₯ν΄κ° λλ μ΅λ¨κ±°λ¦¬λ₯Ό λ°λ‘ ꡬν΄λ²λ¦¬λκ² μ’μ§
# μ½λ
# 2025-04-01 15:35-16:10
import sys
from collections import deque
# sys.stdin = open("input.txt","r")
MAX = 100_000
n, k = map(int, sys.stdin.readline().split())
dist = [0] * (MAX+1)
def bfs(x):
queue = deque()
queue.append(x)
while queue:
x = queue.popleft()
if x == k:
print(dist[k])
return
directions = [x-1,x+1,2*x]
for d in directions:
if 0 <= d <= MAX and dist[d]==0:
dist[d] = dist[x] + 1
queue.append(d)
bfs(n)
'π Study > Baekjoon' μΉ΄ν κ³ λ¦¬μ λ€λ₯Έ κΈ
[Gold V] 14503 - λ‘λ΄ μ²μκΈ° (0) | 2025.04.13 |
---|---|
[Silver II] 2644 - μ΄μκ³μ° (0) | 2025.04.12 |
[Silver II] 11724 - μ°κ²° μμμ κ°μ (0) | 2025.04.10 |
[Silver I] 2667 - λ¨μ§λ²νΈλΆμ΄κΈ° (0) | 2025.04.10 |
[Silver IV] 2331 - λ°λ³΅μμ΄ (0) | 2025.04.10 |