Run ID 作者 问题 语言 测评结果 时间 内存 代码长度 提交时间
52442 zouqinghua 开关灯 C++ 解答错误 1 MS 244 KB 1210 2024-10-06 18:24:25

Tests(0/1):


#include <iostream> using namespace std; int main() { int n, m; // 定义两个变量 n 和 m,分别表示灯的总数和人的总数 cin >> n >> m; int a[n+1]; // 定义一个长度为 n+1 的数组 a,用来表示灯的状态(下标从1到n) // 初始化所有灯的状态为 1(开启状态) for(int i = 1; i <= n; i++) { a[i] = 1; // 1 表示灯是开启状态 } // 模拟 M 个人的操作,每个人按照规则操作灯 for (int j = 1; j <= m; j++) { // 遍历所有灯编号 for(int i = 1; i <= n; i++) { // 如果灯的编号 i 是当前人的编号 j 的倍数,则反转该灯的状态 if(i % j == 0) { a[i] = !a[i]; // 反转灯的状态:1 变 0,0 变 1 } } } // 输出所有关闭状态(0)的灯的编号,输出时用逗号分隔 for (int i = 1; i <= n; i++) { // 如果灯的状态是 0,表示该灯关闭 if (a[i] == 0) { cout << i << ","; // 输出关闭的灯的编号,后跟一个逗号 } } return 0; // 程序执行完毕,返回 0 表示成功 }


测评信息: