编号 题目 状态 分数 总时间 内存 代码 / 答案文件 提交者 提交时间
#46411 #1001. A. 神秘谜题 Accepted 100 924 ms 19804 K C++ 17 / 1.2 K 自动化钱001-徐启航 2020-09-20 21:53:49
显示原始代码
#include <iostream>

using namespace std;

struct Node {
    int s[2];
    int n;
} node[6400000];
int ptr = 1, sum[32];

void insert(int x) {
    for (int i = 0, idx = 0, k; i < 32; i++, idx = node[idx].s[k]) {
        k = (x >> i) & 1;
        if (!node[idx].s[k])
            node[idx].s[k] = ptr++;
        node[idx].n++, sum[i] += k;
    }
}

void inc(int idx, int dep) {
    if (node[idx].s[1])
        inc(node[idx].s[1], dep + 1);
    if (node[idx].s[0])
        sum[dep] += node[node[idx].s[0]].n;
    if (node[idx].s[1])
        sum[dep] -= node[node[idx].s[1]].n;
    swap(node[idx].s[0], node[idx].s[1]);
}

int getv() {
    int ret = 0;
    for (int i = 0; i < 32; i++) {
        ret |= (sum[i] & 1) << i;
    }
    return ret;
}

int main() {
    int n;
    cin >> n;
    for (int _ = 0; _ < n; _++) {
        int op, x;
        cin >> op;
        if (op == 1) {
            inc(0, 0);
        } else {
            cin >> x;
            insert(x);
        }
        cout << getv() << endl;
    }
}
子任务 #1
Accepted
得分:100
测试点 #1
Accepted
得分:100
用时:468 ms
内存:19804 KiB

输入文件(1.in

200000
2 526767110
2 724642759
2 567837900
2 104106873
2 357915481
2 33997211
2 444788944
2 
<1586974 bytes omitted>

答案文件(1.ans

526767110
877985729
361528077
330887284
116239149
82537142
510237286
843295274
453728745
55
<2188330 bytes omitted>

用户输出

526767110
877985729
361528077
330887284
116239149
82537142
510237286
843295274
453728745
559263713
323554710
713540578
520942594
<1988302 bytes omitted>

系统信息

Exited with return code 0
测试点 #2
Accepted
得分:100
用时:456 ms
内存:19772 KiB

输入文件(2.in

200000
2 515979308
2 512702340
2 684230440
2 488136957
2 598252313
2 283603971
2 349877373
2
<1586842 bytes omitted>

答案文件(2.ans

515979308
5115816
679905408
899606653
372667236
114362215
302756634
473674072
520218589
525
<2192841 bytes omitted>

用户输出

515979308
5115816
679905408
899606653
372667236
114362215
302756634
473674072
520218589
525056845
703148326
764590712
207056035

<1992813 bytes omitted>

系统信息

Exited with return code 0