[백준] 17086번 아기 상어 2 (bfs, python)
728x90
반응형
from _collections import deque
def bfs():
q = deque()
q.append((i,j,0))
vis[i][j]=1
while q:
y,x,cnt=q.popleft()
if a[y][x]==1:
return cnt
for k in range(8):
xx=x+dx[k]
yy=y+dy[k]
if xx<0 or yy<0 or xx>=m or yy>=n: continue
if vis[yy][xx]: continue
q.append((yy,xx,cnt+1))
vis[yy][xx]=1
return 0
n,m=map(int,input().split())
vis=[[0]*m for _ in range(n)]
a=[list(map(int,input().split())) for _ in range(n)]
dx,dy=[1,-1,0,0,-1,-1,1,1],[0,0,1,-1,-1,1,-1,1]
res=0
for i in range(n):
for j in range(m):
vis = [[0] * m for _ in range(n)]
cur=bfs()
if cur>res:
res=cur
print(res)
728x90
반응형
'백준' 카테고리의 다른 글
[백준] 14888번 연산자 (python, dfs) (0) | 2020.10.17 |
---|---|
[백준] 16930번 달리기 (python, bfs) (0) | 2020.10.16 |
[백준] 14226번 이모티콘 (bfs, 파이썬) (0) | 2020.10.16 |
[백준] 13913번 숨바꼭질4 (0) | 2020.10.16 |
[백준] 13549번 숨바꼭질 3 (python, bfs) (0) | 2020.10.16 |
TAGS.