🗒️1298. 你能从盒子里获得的最大糖果数
2025-1-6
| 2025-1-6
0  |  阅读时长 0 分钟
type
status
date
slug
summary
tags
category
icon
password
创建时间
Jan 6, 2025 03:49 AM
给你 n 个盒子,每个盒子的格式为 [status, candies, keys, containedBoxes] ,其中:
  • 状态字 status[i]:整数,如果 box[i] 是开的,那么是 ,否则是 
  • 糖果数 candies[i]: 整数,表示 box[i] 中糖果的数目。
  • 钥匙 keys[i]:数组,表示你打开 box[i] 后,可以得到一些盒子的钥匙,每个元素分别为该钥匙对应盒子的下标。
  • 内含的盒子 containedBoxes[i]:整数,表示放在 box[i] 里的盒子所对应的下标。
给你一个 initialBoxes 数组,表示你现在得到的盒子,你可以获得里面的糖果,也可以用盒子里的钥匙打开新的盒子,还可以继续探索从这个盒子里找到的其他盒子。
请你按照上述规则,返回可以获得糖果的 最大数目 

广度优先遍历

💡
注意:在进行广度优先遍历的时候,对于放入队列中的元素,先判断后放入。放入的元素一定满足要求,不要在拿出的时候,再进行合法性判断!!!
这道题使用了位运算来进行状态判断
也可以和官方题解一样,使用多个数组来进行判断。

📎 参考

  • 【题单】图论算法
  • 2039. 网络空闲的时刻1557. 可以到达所有点的最少点数目
    Loading...