我们可以将问题抽象为一个状态空间搜索问题: 状态:用一个二元组 表示两只怪物的当前血量。初始状态为 。 目标状态:任何满足 且 的状态。 转移: 火球术 (对怪物 A): 火球术 (对怪物 B): 烈焰风暴 (群攻): 由于 的值都很小(),状态空间很小,BFS 是最高效的解法。 我们使用一个队列 queue 来存储待访问的状态,并使用一个 visited 集合来避免重复计算,防止无限循环。 代码 #include <bits/stdc++.h> using namespace std; // 使用 tuple<int, int, int> 来存储 (...