正经题解|灯光控制
2024-07-22 10:57:49
发布于:浙江
22阅读
0回复
0点赞
题目分析
二进制模拟
有 盏灯,编号为 ,一开始所有的灯都是熄灭的,灯只有两种状态开
与关
。
设 初始为 。
当第 盏灯亮时,,当第 盏灯熄灭时 。
对于第 盏灯的状态,我们可以用二进制中的 与 表示,即 在二进制下的第 位。如编号为 的灯亮, 在二进制中为 0b110010
。
控制某个灯的开关,按照题目意思开着会变为关,关的会变为开,用异或
就行了。
AC代码
#include <iostream>
using namespace std;
int main() {
int t;
cin >> t;
int s = 0;
while(t--) {
int i;
cin >> i;
s ^= (1 << i);
cout << s << endl;
}
return 0;
}
复杂度分析
。
全部评论 1
我为什么要用bitset呢?
2024-07-22 来自 广东
0
有帮助,赞一个