UOJ Logo

NOI.AC

IDProblemSubmitterResultTimeMemoryLanguageFile sizeSubmit timeJudge time
#214604#2376. 树与异或a_sad_soul04467ms28288kbC++11724b2024-11-20 20:06:202024-11-20 23:04:23

answer

#include<bits/stdc++.h>
using namespace std;
const int MAXN = 1e6+10;
vector<int>e[MAXN];
int cnt[MAXN];
int f[MAXN];
int n,q;
int v[MAXN];
int calc(int x){
    int re=v[x];
    for(int u:e[x]){
        re^=v[u];
        for(int V:e[u]){
            if(V==x)continue;re^=v[V];
        }
    }
    return re;
}
typedef long long ll;
const int mod = 1e9+7;
int main(){
    scanf("%d%d",&n,&q);
    for(int i=1;i<=n;++i)scanf("%d",&v[i]);
    for(int i=1;i<n;++i){int u,v;scanf("%d%d",&u,&v);e[u].push_back(v),e[v].push_back(u);}
    ll ans=0;
    for(int i=1;i<=q;++i){
        int x,y;scanf("%d%d",&x,&y);v[x]=y;
        ans=(ans+calc(x)*i*i%mod)%mod;
    }
    cout<<ans<<endl;
    return 0;
}

Details

小提示:点击横条可展开更详细的信息

Test #1:

score: 0
Wrong Answer
time: 4ms
memory: 24744kb

input:

1000 994
780089107 4670366 871010085 73730768 526852049 572589363 885190993 1049357301 450850404 460...

output:

667822125

result:

wrong answer 1st numbers differ - expected: '503748432', found: '667822125'

Test #2:

score: 0
Wrong Answer
time: 7ms
memory: 24740kb

input:

1000 999
26885995 181771373 378079250 245122183 660787775 479226046 575400611 257120086 214404794 48...

output:

-426026816

result:

wrong answer 1st numbers differ - expected: '301019013', found: '-426026816'

Test #3:

score: 0
Wrong Answer
time: 3ms
memory: 24744kb

input:

1000 994
978408146 31636243 945016735 512129400 92881624 689719983 649699545 964802847 100094796 941...

output:

200411921

result:

wrong answer 1st numbers differ - expected: '250985726', found: '200411921'

Test #4:

score: 0
Wrong Answer
time: 1509ms
memory: 28284kb

input:

100000 99994
194640838 777315353 114710204 754050649 372592717 210279787 542056883 638262010 7998293...

output:

383197133

result:

wrong answer 1st numbers differ - expected: '897014293', found: '383197133'

Test #5:

score: 0
Wrong Answer
time: 1516ms
memory: 28284kb

input:

100000 100000
458877901 215980825 777376132 863774865 34430451 828397116 94813690 931300514 10548367...

output:

-265289510

result:

wrong answer 1st numbers differ - expected: '351450518', found: '-265289510'

Test #6:

score: 0
Wrong Answer
time: 1428ms
memory: 28288kb

input:

100000 99991
56406146 757409402 876799234 573444553 883023109 326033134 328116703 623771278 41269529...

output:

407226293

result:

wrong answer 1st numbers differ - expected: '440189625', found: '407226293'

Test #7:

score: 0
Time Limit Exceeded

input:

1000000 999998
814298729 663807029 628693441 45635199 148428014 913833778 1034283337 600802841 58045...

output:


result:


Test #8:

score: 0
Time Limit Exceeded

input:

1000000 999993
112899321 425466951 471078924 857561298 449437156 710041336 1033281580 23390934 44420...

output:


result:


Test #9:

score: 0
Time Limit Exceeded

input:

1000000 1000000
273043260 1042513348 30746190 864557483 187812119 562837674 263192174 364182254 3537...

output:


result:


Test #10:

score: 0
Time Limit Exceeded

input:

1000000 999995
83067658 1064735371 623243759 757522311 539363923 924297206 75317137 543750195 822898...

output:


result: