Submission #272036

# Submission time Handle Problem Language Result Execution time Memory
272036 2020-08-18T08:25:13 Z JuliusMieliauskas XORanges (eJOI19_xoranges) C++14
55 / 100
1000 ms 4288 KB
#include <bits/stdc++.h>

using namespace std;

#define all(x) x.begin(), x.end()
#define vi vector<int>
#define vll vector<long long>
#define MOD 1000000007
#define endl '\n'

typedef long long ll;

map<int, int> m;

void print(vi v){
    cout<<"Contents of vector:\n";
    for(auto x : v) cout<<x<<" ";
    cout<<endl<<endl;
}

void solve(){
    int n, q; cin>>n>>q;
    int ar[n], pref[n+1];
    for(int i = 0; i<n; i++) cin>>ar[i];

    pref[0] = 0;
    pref[1] = ar[0];

    for(int i = 2; i<=n; i++) {
        pref[i] = pref[i-1] ^ ar[i-1];
        //else pref[1] = ar[0] ^ ar[1];
    }

    /*cout<<"Prefs: "<<endl;
    for(int i = 0; i<n+1; i++) cout<<pref[i]<<" ";
    cout<<endl<<endl;*/

    for(int i = 0; i<q; i++){
        int type; cin>>type;
        if(type == 1){
            int ind, value; cin>>ind>>value;

            ar[ind-1] = value;

            /*cout<<"array: "<<endl;
            for(int i = 0; i<=n; i++) cout<<ar[i]<<" ";
            cout<<endl<<endl;*/

            pref[0] = 0;
            pref[1] = ar[0];

            for(int i = 2; i<=n; i++) {
                pref[i] = pref[i-1] ^ ar[i-1];
                //else pref[1] = ar[0] ^ ar[1];
            }

            /*cout<<"Prefs: "<<endl;
            for(int i = 0; i<=n; i++) cout<<pref[i]<<" ";
            cout<<endl<<endl;*/

        } else {
            int from, to; cin>>from>>to;

            if((to-from+1)%2 == 0){
                cout<<"0"<<endl;
                continue;
            }

            int ans = 0;

            for(int i = from-1; i<=to; i+=2){
                ans ^= ar[i];
            }

            /*cout<<"Map: "<<endl;
            for(auto x : m){
                cout<<x.first<<" : "<<x.second<<endl;
            }*/

            cout<<ans<<endl;
        }
    }
}

int main() {
    ios_base::sync_with_stdio(false); cin.tie(nullptr);
    //ifstream cin("input.txt"); ofstream cout("output.txt");///cia failai

    //int T; cin>>T;
    int T = 1;

    for(int it = 1; it<=T; it++){
        solve();

    }
}
# Verdict Execution time Memory Grader output
1 Correct 1 ms 384 KB Output is correct
2 Correct 1 ms 384 KB Output is correct
3 Correct 1 ms 384 KB Output is correct
4 Correct 0 ms 384 KB Output is correct
5 Correct 0 ms 384 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 1 ms 384 KB Output is correct
2 Correct 1 ms 384 KB Output is correct
3 Correct 1 ms 384 KB Output is correct
4 Correct 1 ms 384 KB Output is correct
5 Correct 1 ms 384 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 1 ms 384 KB Output is correct
2 Correct 1 ms 384 KB Output is correct
3 Correct 1 ms 384 KB Output is correct
4 Correct 0 ms 384 KB Output is correct
5 Correct 0 ms 384 KB Output is correct
6 Correct 1 ms 384 KB Output is correct
7 Correct 1 ms 384 KB Output is correct
8 Correct 1 ms 384 KB Output is correct
9 Correct 1 ms 384 KB Output is correct
10 Correct 1 ms 384 KB Output is correct
11 Correct 10 ms 384 KB Output is correct
12 Correct 11 ms 384 KB Output is correct
13 Correct 7 ms 384 KB Output is correct
14 Correct 8 ms 384 KB Output is correct
# Verdict Execution time Memory Grader output
1 Execution timed out 1090 ms 4288 KB Time limit exceeded
2 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Correct 1 ms 384 KB Output is correct
2 Correct 1 ms 384 KB Output is correct
3 Correct 1 ms 384 KB Output is correct
4 Correct 0 ms 384 KB Output is correct
5 Correct 0 ms 384 KB Output is correct
6 Correct 1 ms 384 KB Output is correct
7 Correct 1 ms 384 KB Output is correct
8 Correct 1 ms 384 KB Output is correct
9 Correct 1 ms 384 KB Output is correct
10 Correct 1 ms 384 KB Output is correct
11 Correct 10 ms 384 KB Output is correct
12 Correct 11 ms 384 KB Output is correct
13 Correct 7 ms 384 KB Output is correct
14 Correct 8 ms 384 KB Output is correct
15 Execution timed out 1090 ms 4288 KB Time limit exceeded
16 Halted 0 ms 0 KB -