type
status
date
slug
summary
tags
category
icon
password
创建时间
Jan 6, 2025 03:49 AM
给你
n
个盒子,每个盒子的格式为 [status, candies, keys, containedBoxes]
,其中:- 状态字
status[i]
:整数,如果box[i]
是开的,那么是 1 ,否则是 0 。
- 糖果数
candies[i]
: 整数,表示box[i]
中糖果的数目。
- 钥匙
keys[i]
:数组,表示你打开box[i]
后,可以得到一些盒子的钥匙,每个元素分别为该钥匙对应盒子的下标。
- 内含的盒子
containedBoxes[i]
:整数,表示放在box[i]
里的盒子所对应的下标。
给你一个
initialBoxes
数组,表示你现在得到的盒子,你可以获得里面的糖果,也可以用盒子里的钥匙打开新的盒子,还可以继续探索从这个盒子里找到的其他盒子。请你按照上述规则,返回可以获得糖果的 最大数目 。
广度优先遍历
注意:在进行广度优先遍历的时候,对于放入队列中的元素,先判断后放入。放入的元素一定满足要求,不要在拿出的时候,再进行合法性判断!!!
这道题使用了位运算来进行状态判断
也可以和官方题解一样,使用多个数组来进行判断。
📎 参考
- 无