Submission #2163201
Source Code Expand
#include<bits/stdc++.h> using namespace std; using Int = long long; //INSERT ABOVE HERE signed main(){ Int n; cin>>n; vector<Int> a(n); for(Int i=0;i<n;i++) cin>>a[i]; Int k=0,px=n+1,py=n+1; for(Int m=20;m>=0;m--){ vector<Int> b(n); for(Int i=0;i<n;i++) b[i]=a[i]>>m; Int nk=(k<<1)|1; bool ok=0; map<Int, Int> pos; Int x=0,idx=n+1,idy=n+1; for(Int i=0;i<n;i++){ if(!pos.count(x)) pos[x]=i; x^=b[i]; if(pos.count(nk^x)){ ok=1; if(pos[nk^x]<idx||(pos[nk^x]==idx&&i<idy)) tie(idx,idy)=make_pair(pos[nk^x],i); } } //cout<<nk<<":"<<ok<<endl; k<<=1; if(ok){ k++; px=idx; py=idy; } } cout<<k<<" "<<px+1<<" "<<py+1<<endl; return 0; }
Submission Info
Submission Time | |
---|---|
Task | F - Maximum Segment XOR |
User | beet |
Language | C++14 (GCC 5.4.1) |
Score | 0 |
Code Size | 786 Byte |
Status | WA |
Exec Time | 596 ms |
Memory | 7796 KB |
Judge Result
Set Name | All | ||||
---|---|---|---|---|---|
Score / Max Score | 0 / 100 | ||||
Status |
|
Set Name | Test Cases |
---|---|
All | 1, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 2, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 3, 30, 31, 4, 5, 6, 7, 8, 9 |
Case Name | Status | Exec Time | Memory |
---|---|---|---|
1 | AC | 1 ms | 256 KB |
10 | AC | 4 ms | 256 KB |
11 | AC | 3 ms | 256 KB |
12 | AC | 2 ms | 256 KB |
13 | AC | 26 ms | 640 KB |
14 | AC | 33 ms | 896 KB |
15 | AC | 40 ms | 956 KB |
16 | AC | 252 ms | 4360 KB |
17 | AC | 161 ms | 2660 KB |
18 | AC | 596 ms | 7796 KB |
19 | AC | 1 ms | 256 KB |
2 | AC | 1 ms | 256 KB |
20 | AC | 1 ms | 256 KB |
21 | AC | 1 ms | 256 KB |
22 | AC | 2 ms | 256 KB |
23 | AC | 1 ms | 256 KB |
24 | AC | 2 ms | 256 KB |
25 | AC | 7 ms | 512 KB |
26 | AC | 4 ms | 384 KB |
27 | AC | 14 ms | 768 KB |
28 | AC | 246 ms | 5300 KB |
29 | AC | 372 ms | 5724 KB |
3 | AC | 1 ms | 256 KB |
30 | AC | 163 ms | 3724 KB |
31 | AC | 349 ms | 7348 KB |
4 | WA | 1 ms | 256 KB |
5 | AC | 1 ms | 256 KB |
6 | AC | 1 ms | 256 KB |
7 | AC | 1 ms | 256 KB |
8 | AC | 1 ms | 256 KB |
9 | AC | 3 ms | 256 KB |