C++ 实现雪人部落关灯问题,计算剩余亮灯数量
以下是使用 C++ 语言实现该功能的代码: ```cpp #include <iostream> #include <vector> int main() { // 初始化 10 盏灯,初始状态都为亮(用 true 表示亮) std::vector<bool> lights(10, true); int start, end; for (int i = 0; i < 2; ++i) { // 读取起点和终点 std::cin >> start >> end; // 确保起点小于等于终点 if (start > end) { int temp = start; start = end; end = temp; } // 将从起点到终点的灯熄灭(置为 false) for (int j = start - 1; j < end; ++j) { lights[j] = false; } } // 统计亮着的灯的数量 int count = 0; for (bool light : lights) { if (light) { ++count; } } // 输出亮着的灯的数量 std::cout << count << std::endl; return 0; } ``` ### 代码解释: 1. 首先,使用 `std::vector<bool>` 来表示 10 盏灯,初始状态都为亮(用 `true` 表示)。 2. 然后,通过一个循环读取两次起点和终点坐标。在读取过程中,如果起点大于终点,交换它们的值以确保起点小于等于终点。 3. 接着,将从起点到终点的灯熄灭(将对应位置的元素置为 `false`)。 4. 遍历 `lights` 向量,统计亮着的灯的数量(值为 `true` 的元素个数)并输出结果。 ######[AI问答 | 442点数解答 | 2026-02-27 19:37:10]
- 易语言读取文本文件并显示到超级列表框:代码示例与注意要点(DeepSeek | 571点数解答 | 2025-08-23 20:54:40)213
- 易语言:读取并显示特定文本到超级列表框,还能增加新数据的方法与要点(DeepSeek | 1317点数解答 | 2025-08-23 20:58:40)218
- mallshop商城网站:数据库设计与强大业务功能全揭秘(GPT | 257点数解答 | 2024-12-09 14:08:15)265
- Python 实现球类:精准计算半径、表面积与体积,附输入验证与异常处理!(阿里通义 | 261点数解答 | 2024-11-28 21:19:39)330
- Python 高效求解:让数列变身接龙数列最少需删多少数?(字节豆包 | 493点数解答 | 2025-12-13 10:25:59)50
- 51 单片机:定时器 0 实现 8 个 LED 循环点亮,附代码及优化建议(字节豆包 | 1193点数解答 | 2024-12-27 15:10:29)298
- C++ 代码实现自定义运算 x@y = x² + y² - xy 及 x@(x+y) 计算(DeepSeek | 215点数解答 | 2025-12-13 15:08:14)53
- 用Python处理商品销售数据:替换类别、合并类目并输出前5行(百度文心 | 486点数解答 | 2024-08-23 09:14:21)302
- Python 破解:计算序列中满足特定取余条件元素的数量(字节豆包 | 174点数解答 | 2025-05-13 21:29:55)178
- 一文搞定!无名杀“再生安瓿”技能代码全解析及注意事项(字节豆包 | 464点数解答 | 2025-06-15 20:06:30)148
- C# 实现商品类:数量限制 100 及开发注意要点(字节豆包 | 737点数解答 | 2025-09-03 14:44:56)90
- 易语言多线程实战:获取进程信息、读写内存与多线程协同操作(字节豆包 | 790点数解答 | 2025-11-28 03:08:24)32