乌拉乎吃大餐问题的 C++ 解决方案
以下是解决该问题的 C++ 代码: ```cpp #include <iostream> using namespace std; int main() { int n, m; // 输入食物数量 n 和乌拉乎的饥饿度 m cin >> n >> m; int satiety; for (int i = 1; i <= n; i++) { // 跳过乌拉乎不喜欢的食物(编号为 3 的倍数或 7 的倍数) if (i % 3 == 0 || i % 7 == 0) { cin >> satiety; continue; } cin >> satiety; // 减少乌拉乎的饥饿度 m -= satiety; if (m <= 0) { // 当饥饿度小于等于 0 时,输出当前食物编号 cout << i << endl; return 0; } } // 选完所有食物仍未吃饱,输出 -1 cout << -1 << endl; return 0; } ``` ### 代码解释: 1. **输入处理**:首先读取食物的数量 `n` 和乌拉乎的饥饿度 `m`。 2. **遍历食物**:使用 `for` 循环从编号 1 到 `n` 遍历每盘食物。 3. **跳过不喜欢的食物**:如果食物编号是 3 的倍数或 7 的倍数,跳过该食物,直接读取其饱腹值但不进行饥饿度的减少操作。 4. **减少饥饿度**:对于乌拉乎喜欢的食物,读取其饱腹值并从当前饥饿度 `m` 中减去该值。 5. **判断是否吃饱**:每次减去饱腹值后,检查乌拉乎的饥饿度是否小于等于 0。如果是,则输出当前食物的编号并结束程序。 6. **未吃饱情况**:如果遍历完所有食物后,乌拉乎的饥饿度仍然大于 0,则输出 -1。 ######[AI问答 | 471点数解答 | 2026-03-22 16:50:34]
- 导出功能优化:解决多次导出、过程异常、失败提示及完成通知问题 (DeepSeek | 1点数解答 | 2025-02-12 17:35:54)187
- 浙闽“板凳龙”舞龙队 300 秒螺线盘入:位置与速度全揭秘(阿里通义 | 886点数解答 | 2024-09-07 10:31:31)629
- 浙闽“板凳龙”舞龙队 300 秒位置与速度数学模型揭秘(GPT | 565点数解答 | 2024-09-07 10:32:56)527
- 223节板凳龙沿等距螺线盘入:300秒内位置与速度的数学揭秘 (讯飞星火 | 443点数解答 | 2024-09-07 10:34:10)375
- 浙闽“板凳龙”300秒舞龙轨迹与速度:数学模型揭秘!(字节豆包 | 522点数解答 | 2024-09-07 10:35:06)345
- Excel 销售数据难题:2024 年 Q3 及特定时段销售情况计算全攻略(字节豆包 | 762点数解答 | 2024-11-06 19:11:51)190
- 从封闭到觉醒:中国在西方文化冲击下的曲折蜕变(讯飞星火 | 331点数解答 | 2024-11-30 21:50:57)189
- 陈独秀〈吾人最后之觉悟〉:文化冲突下的觉醒与奋进之路(百度文心 | 458点数解答 | 2024-11-30 21:51:52)198
- 从文化冲突到国民觉悟:中国近代变革的觉醒之路( | 21点数解答 | 2024-11-30 21:52:33)191
- Python:生成含随机缺失值二维数组并处理,附随机选元素赋缺失值代码解析(阿里通义 | 300点数解答 | 2025-03-13 20:19:30)215
- 破解“没有3的世界”:找出第n个合规正整数!(DeepSeek | 471点数解答 | 2025-03-17 14:32:58)249
- C++ 破解“没有 3 的世界”:找出第 n 个特殊正整数!(字节豆包 | 333点数解答 | 2025-03-17 22:48:43)150