Submission #65284760
Source Code Expand
Copy
#include <bits/stdc++.h>using namespace std;using ll = long long;const int MAXNODE = 10000000;struct Node{ Node *l,*r; int cnt; ll s0,s1; } pool[MAXNODE];int ptr;Node* newNode(){ Node* t=&pool[ptr++]; t->l=t->r=nullptr; t->cnt=0; t->s0=t->s1=0; return t; }void upd(Node*& t,int lo,int hi,int x){if(!t) t=newNode();if(lo+1==hi){bool odd=!(t->cnt&1);t->cnt++;if(odd) t->s0+=x; else t->s1+=x;return;}int mid=lo+((hi-lo)>>1);if(x<mid) upd(t->l,lo,mid,x);
#include <bits/stdc++.h>
using namespace std;
using ll = long long;
const int MAXNODE = 10000000;
struct Node{ Node *l,*r; int cnt; ll s0,s1; } pool[MAXNODE];
int ptr;
Node* newNode(){ Node* t=&pool[ptr++]; t->l=t->r=nullptr; t->cnt=0; t->s0=t->s1=0; return t; }
void upd(Node*& t,int lo,int hi,int x){
if(!t) t=newNode();
if(lo+1==hi){
bool odd=!(t->cnt&1);
t->cnt++;
if(odd) t->s0+=x; else t->s1+=x;
return;
}
int mid=lo+((hi-lo)>>1);
if(x<mid) upd(t->l,lo,mid,x);
else upd(t->r,mid,hi,x);
int cL=t->l?t->l->cnt:0, cR=t->r?t->r->cnt:0;
ll s0L=t->l?t->l->s0:0, s1L=t->l?t->l->s1:0;
ll s0R=t->r?t->r->s0:0, s1R=t->r?t->r->s1:0;
t->cnt=cL+cR;
if(!(cL&1)){ t->s0=s0L+s0R; t->s1=s1L+s1R; }
else { t->s0=s0L+s1R; t->s1=s1L+s0R; }
}
int main(){
ios::sync_with_stdio(false);
cin.tie(nullptr);
int Q; cin>>Q;
Node* root=nullptr;
ll z=0;
while(Q--){
ll y; cin>>y;
int x=int((y+z)%1000000000)+1;
upd(root,1,1000000001,x);
z=root->s0;
cout<<z<<"\n";
}
return 0;
}
Submission Info
| Submission Time | |
|---|---|
| Task | G - Odd Position Sum Query |
| User | OYU__0YU |
| Language | C++ 20 (gcc 12.2) |
| Score | 600 |
| Code Size | 1173 Byte |
| Status | AC |
| Exec Time | 340 ms |
| Memory | 163512 KB |
Judge Result
| Set Name | Sample | All | ||||
|---|---|---|---|---|---|---|
| Score / Max Score | 0 / 0 | 600 / 600 | ||||
| Status |
|
|
| 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 | 3456 KB |
| 00_sample_01.txt | AC | 1 ms | 3448 KB |
| 01_test_00.txt | AC | 1 ms | 3396 KB |
| 01_test_01.txt | AC | 1 ms | 3436 KB |
| 01_test_02.txt | AC | 1 ms | 3440 KB |
| 01_test_03.txt | AC | 1 ms | 3516 KB |
| 01_test_04.txt | AC | 1 ms | 3724 KB |
| 01_test_05.txt | AC | 1 ms | 3788 KB |
| 01_test_06.txt | AC | 6 ms | 7844 KB |
| 01_test_07.txt | AC | 3 ms | 4732 KB |
| 01_test_08.txt | AC | 16 ms | 15548 KB |
| 01_test_09.txt | AC | 97 ms | 59768 KB |
| 01_test_10.txt | AC | 195 ms | 102980 KB |
| 01_test_11.txt | AC | 168 ms | 92624 KB |
| 01_test_12.txt | AC | 322 ms | 155600 KB |
| 01_test_13.txt | AC | 326 ms | 155600 KB |
| 01_test_14.txt | AC | 68 ms | 3468 KB |
| 01_test_15.txt | AC | 104 ms | 4816 KB |
| 01_test_16.txt | AC | 79 ms | 3624 KB |
| 01_test_17.txt | AC | 110 ms | 4864 KB |
| 01_test_18.txt | AC | 111 ms | 4536 KB |
| 01_test_19.txt | AC | 122 ms | 4908 KB |
| 01_test_20.txt | AC | 91 ms | 4292 KB |
| 01_test_21.txt | AC | 146 ms | 5752 KB |
| 01_test_22.txt | AC | 173 ms | 11276 KB |
| 01_test_23.txt | AC | 204 ms | 11876 KB |
| 01_test_24.txt | AC | 252 ms | 55164 KB |
| 01_test_25.txt | AC | 340 ms | 58860 KB |
| 01_test_26.txt | AC | 319 ms | 163512 KB |
| 01_test_27.txt | AC | 326 ms | 163468 KB |
| 01_test_28.txt | AC | 320 ms | 159732 KB |
| 01_test_29.txt | AC | 323 ms | 159688 KB |
| 01_test_30.txt | AC | 327 ms | 161868 KB |
| 01_test_31.txt | AC | 321 ms | 161872 KB |
| 01_test_32.txt | AC | 279 ms | 77852 KB |
| 01_test_33.txt | AC | 282 ms | 77184 KB |
| 01_test_34.txt | AC | 184 ms | 155572 KB |
| 01_test_35.txt | AC | 189 ms | 155772 KB |
| 01_test_36.txt | AC | 185 ms | 155572 KB |
| 01_test_37.txt | AC | 187 ms | 155772 KB |
| 01_test_38.txt | AC | 190 ms | 155544 KB |
| 01_test_39.txt | AC | 193 ms | 155616 KB |
| 01_test_40.txt | AC | 200 ms | 155588 KB |
| 01_test_41.txt | AC | 201 ms | 155652 KB |
| 01_test_42.txt | AC | 2 ms | 3416 KB |
| 01_test_43.txt | AC | 91 ms | 3472 KB |
| 01_test_44.txt | AC | 110 ms | 5052 KB |