結果
| 問題 | No.323 yuki国 |
| コンテスト | |
| ユーザー |
|
| 提出日時 | 2021-09-16 02:12:01 |
| 言語 | PyPy3 (7.3.15) |
| 結果 |
AC
|
| 実行時間 | 529 ms / 5,000 ms |
| コード長 | 845 bytes |
| コンパイル時間 | 170 ms |
| コンパイル使用メモリ | 82,176 KB |
| 実行使用メモリ | 120,448 KB |
| 最終ジャッジ日時 | 2024-06-29 03:03:17 |
| 合計ジャッジ時間 | 10,901 ms |
|
ジャッジサーバーID (参考情報) |
judge2 / judge3 |
(要ログイン)
| ファイルパターン | 結果 |
|---|---|
| sample | AC * 6 |
| other | AC * 32 |
ソースコード
from collections import deque
H,W=map(int,input().split())
A,sx,sy=map(int,input().split())
B,gx,gy=map(int,input().split())
g=['']*H
for i in range(H):
g[i]=input()
dist=[-1]*50*50*1500
dist[sx*50*1500+sy*1500+A]=0
que=deque([sx*50*1500+sy*1500+A])
dx=[1,0,-1,0]
dy=[0,1,0,-1]
while que:
now=que.popleft()
sz=now%1500
now//=1500
y=now%50
now//=50
x=now
for i in range(4):
nx=x+dx[i]
ny=y+dy[i]
if nx<0 or ny<0 or nx>=H or ny>=W:
continue
nt=sz
if g[nx][ny]=='*':
nt+=1
else:
nt-=1
if nt>=1500 or nt<1:
continue
to=nx*50*1500+ny*1500+nt
if dist[to]!=-1:
continue
dist[to]=0
que.append(to)
if dist[gx*50*1500+gy*1500+B]==0:
print('Yes')
else:
print('No')