동캄의 코딩도장

백준 7562 [나이트의 이동] 파이썬 본문

코테/BOJ

백준 7562 [나이트의 이동] 파이썬

동 캄 2025. 2. 20. 00:08
반응형

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

 

간단한 BFS문제였는데, 바보처럼 한참을 해맸다. pop(0)인데, pop()으로 코드를 작성했었다..

# 백준 7562 나이트의 이동
dr=[-2,-1,1,2,2,1,-1,-2]
dc=[1,2,2,1,-1,-2,-2,-1]

import sys
T=int(sys.stdin.readline().rstrip())
for _ in range(T):
    N=int(sys.stdin.readline())
    visited=[[10**6]* N for _ in range(N)]
    start_r,start_c=map(int,sys.stdin.readline().split())
    goal_r,goal_c=map(int,sys.stdin.readline().split())
    q=[[start_r,start_c]]
    visited[start_r][start_c]=0
    while q:
        curr_r,curr_c=q.pop(0)
        if curr_r==goal_r and curr_c==goal_c:
            print(visited[curr_r][curr_c])
            break
        for i in range(8):
            R=curr_r+dr[i]
            C=curr_c+dc[i]
            if 0<=R<N and 0<=C<N:
                if visited[R][C]>visited[curr_r][curr_c]+1:
                    visited[R][C]=visited[curr_r][curr_c]+1
                    q.append([R,C])
반응형

'코테 > BOJ' 카테고리의 다른 글

백준 2573 [빙산] 파이썬  (0) 2025.02.20
백준 5427 [불] 파이썬  (0) 2025.02.20
백준 17298 [오큰수] 파이썬  (0) 2025.02.19
백준 6198 [옥상 정원 꾸미기] 파이썬  (0) 2025.02.19
백준 2504 [괄호의 값] 파이썬  (0) 2025.02.18