在給定的網格中,每個單元格可以有以下三個值之一:
每分鐘,任何與腐爛的橘子(在 4 個正方向上)相鄰的新鮮橘子都會腐爛。
返回直到單元格中沒有新鮮橘子為止所必須經過的最小分鐘數。如果不可能,返回-1
。
示例 1:
輸入:[[2,1,1],[1,1,0],[0,1,1]]輸出:4示例 2:
輸入:[[2,1,1],[0,1,1],[1,0,1]]輸出:-1解釋:左下角的橘子(第 2 行, 第 0 列)永遠不會腐爛,因為腐爛只會發生在 4 個正向上。示例 3:
輸入:[[0,2]]輸出:0解釋:因為 0 分鐘時已經沒有新鮮橘子了,所以答案就是 0 。**:
class solution , dy[4] = ;
//佇列用於bfs搜尋,map用於儲存每個正常橘子被感染所需要的次數
queueq; mapdepth;
void bfs(vector>& grid)
}while(!q.empty())
} //當按照規則全部感染後 若還有正常橘子 則將ans置為-1
for(int i = 0; i < rs; i ++)
for(int j = 0; j < cs; j ++)
if(grid[i][j] == 1)
}int orangesrotting(vector>& grid)
};
每日演算法 day 19
那些你早出晚歸付出的刻苦努力,你不想訓練,當你覺的太累了但還是要咬牙堅持的時候,那就是在追逐夢想,不要在意終點有什麼,要享受路途的過程,或許你不能成就夢想,但一定會有更偉大的事情隨之而來。mamba out 2020.3.2 先將十六進製制轉化為二進位制 二進位制每四位可以表示乙個十六進製制的數字 ...
腐爛的橘子 C語言
首先需要佇列的相關函式 typedef struct queue 佇列基本元素 佇列的建立 queue creat int size 入隊函式,出隊函式 void inqueue int x,int y,queue queue void dequeue queue queue,int a 佇列判空函...
Day19 檔案的操作
1 檔案操作的三個步驟 開啟檔案 open 操作檔案 read 或者write 關閉檔案 close open 函式預設的是讀模式,預設的編碼是系統當前的編碼.f open test data f.read print data traceback most recent call last fil...