#37778: 解題思路(含一些小技巧)


edoctopus322@gmail.com (Moon Jam)

學校 : 臺北市立成功高級中學
編號 : 167591
來源 : [36.225.19.60]
最後登入時間 :
2023-12-23 13:47:18
k734. 4. 開啟寶盒 -- 2023年6月APCS | From: [36.225.19.230] | 發表日期 : 2023-10-07 01:14

 
解題思路:
我在這題使用了三個陣列分別代表以下意義:

1. 每個寶盒目前還需要幾個鑰匙才可以打開,初始化每個設為$k$
2. 紀錄鑰匙可以打開哪些寶箱
3. 紀錄寶箱打開後可以得到哪些鑰匙

之後再將目前已有的鑰匙拿去開寶箱,因為有鑰匙對應寶箱的陣列,因此就把對應到的寶箱需開啟鑰匙數-1,若發現歸零就把他的鑰匙釋放出來繼續開新的寶箱,直到不能開為止。

🌟第2、3兩個陣列可以使用vector會在實作上比較方便,另外在開寶箱的過程可以使用遞迴的方式撰寫會比較簡單
 
ZeroJudge Forum