酷代码 AI
菜单

雪人部落的机器上有10盏灯,一开始所有灯都是亮的,只需要告诉它起点位置和终点位置,就会把从起点到终点之间的所有灯都熄灭。雪人会说出两次起点和终点坐标,请你帮助众人编写一段程序,输出按照雪人的要求关灯后,机器上还亮着的灯的数量。 输入: 输入包括两行,表示雪人说的两次起点和终点。 每一行包含两个整数,第一个整数表示这次操作的起点,第二个整数表示终点。 输出: 输出包括一行,包含一个整数,表示两次操作后,机器上还亮着的灯的数量。 使用c++语言

```cpp #include <iostream> using namespace std; int main() { // 初始化一个长度为10的布尔数组,用于表示10盏灯的状态,初始都为亮(true) bool lights[10] = {true}; for (int i = 0; i < 10; i++) { lights[i] = true; } int start, end; // 第一次操作 cin >> start >> end; // 遍历从起点到终点的灯,将其状态置为熄灭(false) for (int i = start - 1; i < end; i++) { lights[i] = false; } // 第二次操作 cin >> start >> end; // 再次遍历从起点到终点的灯,将其状态置为熄灭(false) for (int i = start - 1; i < end; i++) { lights[i] = false; } // 统计还亮着的灯的数量 int count = 0; for (int i = 0; i < 10; i++) { if (lights[i]) { count++; } } // 输出结果 cout << count << endl; return 0; } ``` 代码解释: 1. 初始化灯的状态:创建一个长度为10的布尔数组`lights`,用于表示10盏灯的状态,初始时所有灯都为亮(`true`)。 2. 第一次操作:读取用户输入的起点和终点,然后将从起点到终点之间的灯的状态置为熄灭(`false`)。 3. 第二次操作:再次读取用户输入的起点和终点,将从起点到终点之间的灯的状态置为熄灭(`false`)。 4. 统计亮着的灯的数量:遍历布尔数组`lights`,统计值为`true`的元素个数,即亮着的灯的数量。 5. 输出结果:输出亮着的灯的数量。 [2026-01-25 10:49:04 | AI问答 | 485点数解答]

服务商
相关提问
发财导航,免费问AI
实用工具查看更多