Submission #65282181


Source Code Expand

#include <algorithm>
#include <iostream>
#include <vector>
#define SZ(X) (int)(X).size()
using namespace std;
const int MAX_V = 1'000'000'000;
struct Node {
    int num;
    long long s[2];
    int nxt[2];
    Node() {
        num = 0;
        s[0] = s[1] = 0;
        nxt[0] = nxt[1] = 0;
    }
};
vector<Node> seg(1);
void ins(int id, int low, int hi, int x) {
    if (low == hi) {
        seg[id].num ^= 1;
        seg[id].s[seg[id].num ^ 1] += x;
        return;
    }
    int mid = (low + hi) / 2;
    for (int i : {0, 1}) {
        if (!seg[id].nxt[i]) {
            seg[id].nxt[i] = SZ(seg);
            seg.push_back(Node());
        }
    }
    if (x <= mid) {
        ins(seg[id].nxt[0], low, mid, x);
    } else {
        ins(seg[id].nxt[1], mid + 1, hi, x);
    }
    seg[id].num ^= 1;
    for (int i : {0, 1}) {
        seg[id].s[i] = seg[seg[id].nxt[0]].s[i];
    }
    for (int i : {0, 1}) {
        seg[id].s[i] += seg[seg[id].nxt[1]].s[i ^ seg[seg[id].nxt[0]].num];
    }
}
int main() {
    cin.tie(0);
    ios_base::sync_with_stdio(0);
    int Q;
    cin >> Q;
    long long z = 0;
    while (Q--) {
        int y;
        cin >> y;
        int x = (y + z) % MAX_V + 1;
        ins(0, 1, MAX_V, x);
        z = seg[0].s[0];
        cout << seg[0].s[0] << '\n';
    }
}

Submission Info

Submission Time
Task G - Odd Position Sum Query
User aacpschool
Language C++ 20 (gcc 12.2)
Score 600
Code Size 1343 Byte
Status AC
Exec Time 475 ms
Memory 265912 KiB

Judge Result

Set Name Sample All
Score / Max Score 0 / 0 600 / 600
Status
AC × 2
AC × 47
Set Name Test Cases
Sample 00_sample_00.txt, 00_sample_01.txt
All 00_sample_00.txt, 00_sample_01.txt, 01_test_00.txt, 01_test_01.txt, 01_test_02.txt, 01_test_03.txt, 01_test_04.txt, 01_test_05.txt, 01_test_06.txt, 01_test_07.txt, 01_test_08.txt, 01_test_09.txt, 01_test_10.txt, 01_test_11.txt, 01_test_12.txt, 01_test_13.txt, 01_test_14.txt, 01_test_15.txt, 01_test_16.txt, 01_test_17.txt, 01_test_18.txt, 01_test_19.txt, 01_test_20.txt, 01_test_21.txt, 01_test_22.txt, 01_test_23.txt, 01_test_24.txt, 01_test_25.txt, 01_test_26.txt, 01_test_27.txt, 01_test_28.txt, 01_test_29.txt, 01_test_30.txt, 01_test_31.txt, 01_test_32.txt, 01_test_33.txt, 01_test_34.txt, 01_test_35.txt, 01_test_36.txt, 01_test_37.txt, 01_test_38.txt, 01_test_39.txt, 01_test_40.txt, 01_test_41.txt, 01_test_42.txt, 01_test_43.txt, 01_test_44.txt
Case Name Status Exec Time Memory
00_sample_00.txt AC 1 ms 3412 KiB
00_sample_01.txt AC 1 ms 3428 KiB
01_test_00.txt AC 1 ms 3524 KiB
01_test_01.txt AC 1 ms 3532 KiB
01_test_02.txt AC 1 ms 3532 KiB
01_test_03.txt AC 1 ms 3612 KiB
01_test_04.txt AC 1 ms 3808 KiB
01_test_05.txt AC 2 ms 4168 KiB
01_test_06.txt AC 10 ms 11392 KiB
01_test_07.txt AC 3 ms 5188 KiB
01_test_08.txt AC 30 ms 36080 KiB
01_test_09.txt AC 154 ms 134316 KiB
01_test_10.txt AC 308 ms 265608 KiB
01_test_11.txt AC 282 ms 265684 KiB
01_test_12.txt AC 453 ms 265616 KiB
01_test_13.txt AC 450 ms 265712 KiB
01_test_14.txt AC 80 ms 3544 KiB
01_test_15.txt AC 124 ms 4904 KiB
01_test_16.txt AC 94 ms 3648 KiB
01_test_17.txt AC 129 ms 4952 KiB
01_test_18.txt AC 128 ms 4748 KiB
01_test_19.txt AC 139 ms 5148 KiB
01_test_20.txt AC 97 ms 5196 KiB
01_test_21.txt AC 156 ms 6340 KiB
01_test_22.txt AC 212 ms 19688 KiB
01_test_23.txt AC 234 ms 19604 KiB
01_test_24.txt AC 329 ms 134324 KiB
01_test_25.txt AC 420 ms 134308 KiB
01_test_26.txt AC 473 ms 265528 KiB
01_test_27.txt AC 462 ms 265604 KiB
01_test_28.txt AC 474 ms 265644 KiB
01_test_29.txt AC 470 ms 265592 KiB
01_test_30.txt AC 475 ms 265608 KiB
01_test_31.txt AC 470 ms 265512 KiB
01_test_32.txt AC 364 ms 134448 KiB
01_test_33.txt AC 355 ms 134324 KiB
01_test_34.txt AC 327 ms 265724 KiB
01_test_35.txt AC 327 ms 265824 KiB
01_test_36.txt AC 326 ms 265660 KiB
01_test_37.txt AC 324 ms 265880 KiB
01_test_38.txt AC 325 ms 265684 KiB
01_test_39.txt AC 330 ms 265900 KiB
01_test_40.txt AC 333 ms 265716 KiB
01_test_41.txt AC 331 ms 265912 KiB
01_test_42.txt AC 2 ms 3552 KiB
01_test_43.txt AC 129 ms 3432 KiB
01_test_44.txt AC 117 ms 4984 KiB