Help!
查看原帖
Help!
288932
IamCXK楼主2023/2/13 18:44
#include <bits/stdc++.h>
#include <iostream>

#define ull unsigned long long

using namespace std;

ull getXorSum(ull *begin, ull *end) {
    ull ret = 0;
    for (ull *it = begin; it != end; ++it) 
        ret ^= *it;
    return ret;
}

ull a[1010][1010];
ull b[1010][1010];
ull ans[1000010];

int main()
{
    ull T, m, n, q;
    ull INF = 0xFFFFFFFFFFFFFFFF;
    cin>>T;
    while(T--)
    {
        scanf("%llu%llu%llu", &m, &n, &q);
        ull u, v, x, y;
        for(ull i=1; i<=n; i++)
            for(ull j=1; j<=m; j++)
            {
                scanf("%lld", &a[i][j]);
                b[i][j] = (b[i-1][j] + b[i][j-1] - b[i-1][j-1] + a[i][j]) & INF;
            }
        for(ull i=0; i<q; i++)
        {
            scanf("%llu%llu%llu%llu", &u, &v, &x, &y);
            ans[i] = (b[x][y] - b[u-1][y] - b[x][v-1] + b[u-1][v-1]) & INF;
        }
        printf("%llu\n", getXorSum(ans, ans+q));
    }
    return 0;
}

样例可以过,但是WA,孩子找不出哪里错0.0

2023/2/13 18:44
加载中...