結果

問題 No.3063 幅優先探索
ユーザー yamamura-kyamamura-k
提出日時 2020-04-01 22:18:48
言語 Python3
(3.12.2 + numpy 1.26.4 + scipy 1.12.0)
結果
RE  
実行時間 -
コード長 837 bytes
コンパイル時間 200 ms
コンパイル使用メモリ 10,864 KB
実行使用メモリ 9,296 KB
最終ジャッジ日時 2023-09-09 18:43:34
合計ジャッジ時間 923 ms
ジャッジサーバーID
(参考情報)
judge13 / judge14
このコードへのチャレンジ
(要ログイン)

テストケース

テストケース表示
入力 結果 実行時間
実行使用メモリ
testcase_00 RE -
testcase_01 RE -
testcase_02 RE -
testcase_03 RE -
testcase_04 RE -
testcase_05 RE -
testcase_06 RE -
testcase_07 RE -
testcase_08 RE -
testcase_09 RE -
testcase_10 RE -
権限があれば一括ダウンロードができます

ソースコード

diff #

R,C = map(int,input().split())
sy,sx = map(int,input().split())
gy,gx= map(int,input().split())
C = [input()for _ in range(C)]
sy -= 1;sx -= 1;gy -= 1;gx -= 1
dist = [[2**60]*R for _ in range(C)]
dist[sy][sx] = 0
from collections import deque
que = deque([(sy,sx)])
d = [-1,1]
visited = [[0]*R for _ in range(C)]
visited[sy][sx] = 1
while que:
    u = que.popleft()
    y,x = u
    for i in range(2):
        yy = y+d[i]
        xx = x+d[i]
        if 0 <= yy < C:
            dist[yy][x] = min(dist[yy][x],dist[y][x]+1)
            if visited[yy][x] == 0:
                que.append((yy,x))
                visited[yy][x] = 1
        if 0 <= xx < R:
            dist[y][xx] = min(dist[y][xx],dist[y][x]+1)
            if visited[y][xx] == 0:
                que.append((y,xx))
                visited[y][xx] = 1     
print(dist[gy][gx])
0