显示原始代码
#include <iostream>
using namespace std;
int main() {
unsigned int x;
unsigned int quan;
int a[200000][30];
int aa[30];
unsigned int aaa;
int num_count = 0;
int op_count;
int i, j, k, op;
cin >> op_count;
for (i = 0; i < op_count; i++) {
cin >> op;
if (op == 1) {
aaa = 0;
quan = 1;
for (j = 0; j < num_count; j++) {
k = 0;
while (a[j][k] != 0) {
a[j][k] = 0;
if (aa[k] == 1)
aa[k] = 0;
else if (aa[k] == 0)
aa[k] = 1;
k++;
}
a[j][k] = 1;
if (aa[k] == 1)
aa[k] = 0;
else if (aa[k] == 0)
aa[k] = 1;
}
for (j = 0; j < 30; j++) {
aaa += quan * aa[j];
quan *= 2;
}
cout << aaa << endl;
}
if (op == 2) {
aaa = 0;
quan = 1;
num_count++;
cin >> x;
k = 0;
while (x != 0) {
if (x % 2 == 1) {
if (aa[k] == 1)
aa[k] = 0;
else if (aa[k] == 0)
aa[k] = 1;
}
x = x / 2;
k++;
}
for (j = 0; j < 30; j++) {
aaa += quan * aa[j];
quan *= 2;
}
cout << aaa << endl;
}
}
return 0;
}