是有什麼特殊的演算法嗎 為什麼我會TLE?
是有什麼特殊的演算法嗎 為什麼我會TLE?
from sys import stdinfrom collections import dequeh,w,x,y,c=map(int,stdin.readline().split())a=[list(map(int,stdin.readline().split())) for _ in range(h)]tar=a[x-1][y-1]p=[[0]*w for _ in range(h)]tasks=deque([(x-1,y-1)])p[x-1][y-1]=1a[x-1][y-1]=cwhile tasks:px,py=tasks.pop()p[px][py]=1for dx,dy in ((0,1),(0,-1),(1,0),(-1,0)):nx=px+dxny=py+dyif h>nx>=0 and w>ny>=0 and p[nx][ny]==0 and a[nx][ny]==tar:a[nx][ny]=ctasks.append((nx,ny))for i in range(h):print(*a[i])
如果(Si, Sj)本來的顏色與Z相同, 就不需要做處理直接輸出結果並 return 0 即可。