付費限定

一題多解 能打開所有房間的門嗎? Keys and Rooms_Leetcode #841 精選75題

閱讀時間約 7 分鐘

題目敘述

題目會給我們一個房間陣列rooms,每個房間裡面擁有數量不等,可以打開其他房間的鑰匙。

每一道房間門預設都是鎖住的,只有0號房間的門一開始是打開的

請問,從0號房間開始拿鑰匙,最終能不能打開所有房間的門?


題目的原文敘述


測試範例

Example 1:

Input: rooms = [[1],[2],[3],[]]
Output: true
Explanation:
We visit room 0 and pick up key 1.
We then visit room 1 and pick up key 2.
We then visit room 2 and pick up key 3.
We then visit room 3.
Since we were able to visit every room, we return true.

0號們一開始就是打開的。​
0號房間可以拿到1號房間的鑰匙。
1號房間可以拿到2號房間的鑰匙。​
2號房間可以拿到3號房間的鑰匙。

可以打開所有房間的門。​

Example 2:

Input: rooms = [[1,3],[3,0,1],[2],[0]]
Output: false
Explanation: We can not enter room number 2 since the only key that unlocks it is in that room.
不管怎麼走,都拿不到2號房間的鑰匙。
無解,返回False,​

約束條件

Constraints:

  • n == rooms.length

房間的總數目定義為n

  • 2 <= n <= 1000

房間的總數目n 介於 2 ~ 1000 之間。

  • 0 <= rooms[i].length <= 1000

每個房間內部可能有0~1000把鑰匙。

代表有些房間進去之後,拿不到別的鑰匙。

  • 1 <= sum(rooms[i].length) <= 3000

鑰匙的總數量介於1~3000把之間。

  • 0 <= rooms[i][j] < n

每把鑰匙都可以打開對應的門,不會有惡作劇無用的鑰匙。

  • All the values of rooms[i] are unique.

單獨每一間房間,內部擁有的鑰匙不會重複。


建立解題模型 與 演算法

以行動支持創作者!付費即可解鎖
本篇內容共 2916 字、1 則留言,僅發佈於Leetcode精選75題 解析+統整你目前無法檢視以下內容,可能因為尚未登入,或沒有該房間的查看權限。
avatar-img
90會員
425內容數
由有業界實戰經驗的演算法工程師, 手把手教你建立解題的框架, 一步步寫出高效、清晰易懂的解題答案。 著重在讓讀者啟發思考、理解演算法,熟悉常見的演算法模板。 深入淺出地介紹題目背後所使用的演算法意義,融會貫通演算法與資料結構的應用。 在幾個經典的題目融入一道題目的多種解法,或者同一招解不同的題目,擴展廣度,並加深印象。
留言0
查看全部
avatar-img
發表第一個留言支持創作者!
題目敘述 題目會給我們一顆二元樹的根結點,請我們列出每一層最右邊的節點值,以陣列的形式返回答案。 題目的原文敘述 測試範例 Example 1: Input: root = [1,2,3,null,5,null,4] Output: [1,3,4] 每一層最右邊的節點值分別是1, 3,
題目敘述 題目會給定我們一個字串s,和一組字庫wordDict。 問我們能不能透過字串串接的方式,從字庫裡面的字拼成原本的字串s? 可以的話,返回True。 無解的話,返回False。 註: 題目還允許重複使用字庫裡面的字去串接。
題目敘述 題目會給定一個指定高度和寬的方格版,還有一顆小球的起始位置,和最大移動步數。 小球每一步可以選擇向上、下、左、右移動一格,請問小球能走到方格版界外的路徑方法數總共有幾種? 方法數可能很大,題目要求,最後回傳答案時,先對10^9+7做除法取餘數再回傳。 題目的原文敘述 約束條件
題目敘述 題目給定我們一顆二元樹的根節點,要求我們計算出從根節點到葉子節點的偽回文路徑路徑有幾條? 偽回文路徑路徑 的定義: 路徑經過重新排列之後,可以形成回文Palindrome,也就是頭尾鏡像對稱。 ​ 例如: 1 -> 3 -> 3 重新排列之後,可以形成 3 -> 1 -> 3
題目敘述 題目會給定一個字串陣列arr最為輸入,我們可以任意選擇一組不包含重複字元的陣列子序列,將字串進行串接,成為字串s,請問字串s的最大長度是多少? 例如: arr=["dog","cow","cat"] 我們可以選擇"dog", "cat"進行串接,得到的字串s="dogcat",s的
題目敘述 題目會給定我們一棵二元數Binary Tree的根結點。 問我們任意祖先節點和晚輩節點之間,最大的差值的絕對值是多少? 題目的原文敘述 測試範例 Example 1: Input: root = [8,3,10,1,6,null,14,null,null,4,7,13] Ou
題目敘述 題目會給我們一顆二元樹的根結點,請我們列出每一層最右邊的節點值,以陣列的形式返回答案。 題目的原文敘述 測試範例 Example 1: Input: root = [1,2,3,null,5,null,4] Output: [1,3,4] 每一層最右邊的節點值分別是1, 3,
題目敘述 題目會給定我們一個字串s,和一組字庫wordDict。 問我們能不能透過字串串接的方式,從字庫裡面的字拼成原本的字串s? 可以的話,返回True。 無解的話,返回False。 註: 題目還允許重複使用字庫裡面的字去串接。
題目敘述 題目會給定一個指定高度和寬的方格版,還有一顆小球的起始位置,和最大移動步數。 小球每一步可以選擇向上、下、左、右移動一格,請問小球能走到方格版界外的路徑方法數總共有幾種? 方法數可能很大,題目要求,最後回傳答案時,先對10^9+7做除法取餘數再回傳。 題目的原文敘述 約束條件
題目敘述 題目給定我們一顆二元樹的根節點,要求我們計算出從根節點到葉子節點的偽回文路徑路徑有幾條? 偽回文路徑路徑 的定義: 路徑經過重新排列之後,可以形成回文Palindrome,也就是頭尾鏡像對稱。 ​ 例如: 1 -> 3 -> 3 重新排列之後,可以形成 3 -> 1 -> 3
題目敘述 題目會給定一個字串陣列arr最為輸入,我們可以任意選擇一組不包含重複字元的陣列子序列,將字串進行串接,成為字串s,請問字串s的最大長度是多少? 例如: arr=["dog","cow","cat"] 我們可以選擇"dog", "cat"進行串接,得到的字串s="dogcat",s的
題目敘述 題目會給定我們一棵二元數Binary Tree的根結點。 問我們任意祖先節點和晚輩節點之間,最大的差值的絕對值是多少? 題目的原文敘述 測試範例 Example 1: Input: root = [8,3,10,1,6,null,14,null,null,4,7,13] Ou
你可能也想看
Google News 追蹤
宇宙關了這門,開了那窗。 快!去看看新的窗的風景,別傻站在關上的門前啦。
生活實驗 八二四       開冷氣是關上房門最好的理由, 不用解釋為何需要自己的空間。
過客家裡的大門鑰匙是伸縮式的,這種鑰匙很常見的,唯一的缺點就是常摔的話鑰匙會從中間斷掉,很特別的我家這組鎖的鑰匙沒有替代的(就一支長長的,沒有申縮功能,打一把才210元)° 記得有次我一共打了兩把,而且還不是每家都有,好不容易找到有的店家,兩把竟然要價1000元,著實嚇壞了,那時薯國的薯友還留
Thumbnail
遇困境畫地自限 是因為只看見虛無縹緲的餘光 跟隨的也只有似乎無法通過的門框 將所學經歷都用盡 釐清問題一番後 仍覺得無法脫困 是因一直只看見一扇門 當將問題再細化分解 會看見那扇門會更巨大 將所有的門再一次結合 那是更無窮力量 通往的不只一扇門 而是沒料想到的巨大
Thumbnail
可愛簡單的小品密室, 兩個人就可以出發去玩囉~!
Thumbnail
可能包含敏感內容
電梯門打開,三個人一起進了狹小的空間,但璇體內的跳蛋還持續著...
Thumbnail
遙控器和鑰匙…到底該不該分開放呢?以一個把自己鎖在門外的過來人經驗來說,我一定會回答:🌟請你分開放🌟那個普通的中午,下樓把文件放進機車置物箱、出門買午餐再回到家享用,本該是個十分鐘內解決的行程,卻因為我的一個不小心花了更多時間才能回到溫暖的房間…來看看我和鑰匙隔著一道鐵門遙遙相望的糗事吧!
宇宙關了這門,開了那窗。 快!去看看新的窗的風景,別傻站在關上的門前啦。
生活實驗 八二四       開冷氣是關上房門最好的理由, 不用解釋為何需要自己的空間。
過客家裡的大門鑰匙是伸縮式的,這種鑰匙很常見的,唯一的缺點就是常摔的話鑰匙會從中間斷掉,很特別的我家這組鎖的鑰匙沒有替代的(就一支長長的,沒有申縮功能,打一把才210元)° 記得有次我一共打了兩把,而且還不是每家都有,好不容易找到有的店家,兩把竟然要價1000元,著實嚇壞了,那時薯國的薯友還留
Thumbnail
遇困境畫地自限 是因為只看見虛無縹緲的餘光 跟隨的也只有似乎無法通過的門框 將所學經歷都用盡 釐清問題一番後 仍覺得無法脫困 是因一直只看見一扇門 當將問題再細化分解 會看見那扇門會更巨大 將所有的門再一次結合 那是更無窮力量 通往的不只一扇門 而是沒料想到的巨大
Thumbnail
可愛簡單的小品密室, 兩個人就可以出發去玩囉~!
Thumbnail
可能包含敏感內容
電梯門打開,三個人一起進了狹小的空間,但璇體內的跳蛋還持續著...
Thumbnail
遙控器和鑰匙…到底該不該分開放呢?以一個把自己鎖在門外的過來人經驗來說,我一定會回答:🌟請你分開放🌟那個普通的中午,下樓把文件放進機車置物箱、出門買午餐再回到家享用,本該是個十分鐘內解決的行程,卻因為我的一個不小心花了更多時間才能回到溫暖的房間…來看看我和鑰匙隔著一道鐵門遙遙相望的糗事吧!