zoukankan      html  css  js  c++  java
  • MORE XOR

    MORE XOR

    #include<bits/stdc++.h>
    using namespace std;
    const int maxn=1e5+10;
    int a[maxn];
    int sum[4][maxn];
    int main()
    {
        ios::sync_with_stdio(false);
        cin.tie(0);
        int t;
        cin>>t;
        while(t--)
        {
            int n;
            cin>>n;
            memset(sum,0,sizeof(sum));
            for(int i=1; i<=n; i++)
                cin>>a[i];
            for(int i=1;i<=n;i++)
            {
                sum[0][i]=sum[0][i-1];
                sum[1][i]=sum[1][i-1];
                sum[2][i]=sum[2][i-1];
                sum[3][i]=sum[3][i-1];
                if(i%4==0)
                    sum[0][i]^=a[i];
                else if(i%4==1)
                    sum[1][i]^=a[i];
                else if(i%4==2)
                    sum[2][i]^=a[i];
                else if(i%4==3)
                    sum[3][i]^=a[i];
            }
            int q;
            cin>>q;
            while(q--)
            {
                int l,r;
                cin>>l>>r;
                int len=(r-l+1)%4;
                int ans=0;
                if(len==1)
                {
                    int yu=l;
                    ans=sum[yu%4][r]^sum[yu%4][l-1];
                }
                else if(len==2)
                {
                    int yu=l;
                    ans=sum[yu%4][r]^sum[yu%4][l-1]^sum[(yu+1)%4][r]^sum[(yu+1)%4][l-1];
                }
                else if(len==3)
                {
                    int yu=l;
                    ans=sum[(yu+1)%4][r]^sum[(yu+1)%4][l-1];
                }
                cout<<ans<<"
    ";
            }
        }
    }
  • 相关阅读:
    hdu 5146 Sequence
    hdu 1232 畅通工程
    hdu 1213 How Many Tables
    hdu 2822 Dogs
    hdu 1242 Rescue
    hdu 5101 Select
    hdu 1873 看病要排队
    hdu 5112 A Curious Matt
    hdu 5154 Harry and Magical Computer
    hdu 1548 A strange lift
  • 原文地址:https://www.cnblogs.com/dongdong25800/p/10752680.html
Copyright © 2011-2022 走看看