力扣778水位上公升的泳池中游泳 python

2021-10-18 10:36:58 字數 766 閱讀 9529

res =

0 n =

len(grid)

heap =

[(grid[0]

[0],

0,0)

]#初始化第乙個點

visited =

set([(

0,0)

])#我們建立個集合儲存我們走過的點,不需要再走一遍了

while heap:

res =

max(res,height)

#我們選取最高水位作為返回值

if x == n-

1and y == n-1:

return res

for dx,dy in[(

0,1)

,(0,

-1),

(1,0

),(-

1,0)

]:#上下左右一次走一遍

new_x,new_y = x + dx,y + dy

if0<= new_x < n and

0<= new_y < n and

(new_x,new_y)

notin visited:

#判斷是否越界和走過

visited.add(

(new_x,new_y)

)(grid[new_x]

[new_y]

,new_x,new_y)

)#我們按照優先順序佇列加入並排序

return

-1

778 水位上公升的泳池中游泳

778.水位上公升的泳池中游泳 在乙個 n x n 的座標方格grid中,每乙個方格的值grid i j 表示在位置 i,j 的平台高度。現在開始下雨了。當時間為t時,此時雨水導致水池中任意位置的水位為t。你可以從乙個平台遊向四周相鄰的任意乙個平台,但是前提是此時水位必須同時淹沒這兩個平台。假定你可...

778 水位上公升的泳池中游泳 並查集

778.水位上公升的泳池中游泳 難度困難159 在乙個 n x n 的座標方格grid中,每乙個方格的值grid i j 表示在位置 i,j 的平台高度。現在開始下雨了。當時間為t時,此時雨水導致水池中任意位置的水位為t。你可以從乙個平台遊向四周相鄰的任意乙個平台,但是前提是此時水位必須同時淹沒這兩...

每日一題 778 水位上公升的泳池中游泳

778.水位上公升的泳池中游泳 分類 並查集 二分答案 最短路 並查集思路挺簡單的。由小到大挨個加,檢查下連上了沒就行。class unionfind introot int i bool connect int i,int j if sz ri sz rj u rj ri sz ri sz rj ...