QOJ.ac

QOJ

IDProblemSubmitterResultTimeMemoryLanguageFile sizeSubmit timeJudge time
#292190#5830. 树for_to0 163ms554336kbC++141023b2023-12-27 20:15:362023-12-27 20:15:36

Judging History

你现在查看的是最新测评结果

  • [2023-12-27 20:15:36]
  • 评测
  • 测评结果:0
  • 用时:163ms
  • 内存:554336kb
  • [2023-12-27 20:15:36]
  • 提交

answer

#include<bits/stdc++.h>
#define int long long
#define pb push_back
#define fi first
#define se second
#define N 1000005

using namespace std;

int n,q;
int a[N];
int head[N],tot;
struct node{
	int nxt,to;
}e[N];
vector <int> g[N][21];
int f[N][21];

void add(int u,int v){
	e[++tot].to=v;
	e[tot].nxt=head[u];
	head[u]=tot;
}

void dfs(int u){
	g[u][0].push_back(a[u]);
	
	for(int i=head[u];i;i=e[i].nxt){
		int v=e[i].to;
		
		dfs(v);
		
		for(int j=1;j<=20;j++)
			for(int k=0;k<g[v][j-1].size();k++)
				g[u][j].push_back(g[v][j-1][k]);
	}
}

signed main(){
	cin.tie(0); ios::sync_with_stdio(false);
	
	cin>>n;
	for(int i=1;i<=n;i++) cin>>a[i];
	for(int i=2,p;i<=n;i++){
		cin>>p;
		
		add(p,i);
	}
	
	dfs(1);
	for(int i=1;i<=n;i++){
		f[i][0]=a[i];
		for(int j=1;j<=20;j++){
			f[i][j]=f[i][j-1];
			for(int k=0;k<g[i][j].size();k++) f[i][j]+=(g[i][j][k]^j);
		}
	}
	cin>>q;
	
	int x,k;
	while(q--){
		cin>>x>>k;
		cout<<f[x][k]<<endl;
	}
	
	return 0;
}

Details

Tip: Click on the bar to expand more detailed information

Test #1:

score: 0
Wrong Answer
time: 67ms
memory: 498136kb

input:

2000
946347867 341162491 202762650 295215762 254064439 66267204 693162580 357612557 492940637 939526638 59775103 374919339 144042807 861369313 651043728 999024805 439554916 167782038 597475252 56704409 69846137 22185655 79439847 769194737 145071391 226046618 915359433 392527325 84982946 54584098 827...

output:

10308722698
558747809
12352523
14185181353
18293125237
585197158
1628586765
922104954
8179034002
1784558632
1832814618
1719999173
465863951
2418952903
19767396996
7362184719
8583064476
1458062157
3071436795
708763390
974312741
22160481283
541384937
102533247
755479297
465075002
51201629
950537857
53...

result:

wrong answer 1st numbers differ - expected: '31727996563', found: '10308722698'

Test #2:

score: 0
Wrong Answer
time: 163ms
memory: 554336kb

input:

99999
792064428 473106195 799314986 65440734 948726345 442414256 280245405 873012700 466192412 899092866 283555341 657824017 963883713 793944180 767444438 105576842 542107696 580140098 65321660 381184238 584604194 397414881 861590124 309323011 217641157 120832524 303744205 961590116 110259426 380351...

output:

2509771019
2652307193
528899856
125427731
1953894159
518782505
1096768397
586671581
412268609
798898621
468901916
1620113250
25990778
1594379152
2659848011
2290055733
1721547881
1491500623
22236440610
16736871470
263989598
1350176621
3802123173
727716410
916189364
1849681495
586576986
971328575
1380...

result:

wrong answer 2nd numbers differ - expected: '102808896745', found: '2652307193'

Test #3:

score: 0
Memory Limit Exceeded

input:

1000000
947727010 179844140 923847675 171881267 5552129 974443359 989307850 869400987 126992154 527448411 141137718 136124474 917813105 392020809 79012342 473860575 969007624 833563354 90169336 878445705 84352622 403307122 733751738 670851448 942399068 731541999 101293644 545785337 964751520 9168003...

output:

1982937285
3389241165
4610395106
7118490981
865135770
4831434907
7144474213
7343470700
7375208381
10111623633
1418835815
9735527709
1985653729
11423518154
4462745280
2110472239
5687359993
1356525416
2419070463
2600759724
7860305468
7256845798
2383182341
5390362534
3360399350
8712558048
382099152
767...

result:


Test #4:

score: 0
Memory Limit Exceeded

input:

1000000
264862971 751386013 921867736 711577153 262726588 565608444 975324815 440219681 107888226 928241413 729126923 283912914 86248857 896446999 12839598 651796991 139813366 105131395 341646170 839485925 939265720 844548518 102280410 457829889 8602879 737140565 17206920 974175632 535833885 8373832...

output:

493335543
1048937393
5762239494
5065115752
2698326491
6137770834
365136575
3503988333
2839926552
1038939252
5822787893
3362605171
5511660554
3548924924
5111375609
4846134351
134311509
2376583216
8775113140
8149213233
7481714306
3815117072
6458770518
6987519667
6046732438
1174219413
1169526176
110286...

result:


Test #5:

score: 0
Memory Limit Exceeded

input:

1000000
978606419 773027389 111265179 979476504 280718851 476857501 751854950 579263969 848569548 781051974 31782627 533831186 812822170 111553645 297770650 331144396 676977983 2236128 258203325 75591120 676466973 60056446 494411414 286185093 92474576 173276071 535648669 87210101 355790411 880267291...

output:

2258826661
938786622
1803221827
20412967786
11943681449
2783437365
16665953904
2720451454
1859550937
476794111
986063591
1579646962
14494868585
38176990
781099105
527479272
2392930136
2519423502
1620138021
23553905552
5107065078
6903424087
1206547828
18830610755
49589751
499629803
4275328259
1379311...

result:


Test #6:

score: 0
Memory Limit Exceeded

input:

1000000
952470566 585754087 120174600 401525004 458588768 5487567 31210348 446333263 231409083 521960132 457721893 866842852 925207283 16805978 4706826 99640835 619272676 136536623 459247161 308807462 633687300 717271369 23906473 865522890 173799280 424309108 719410673 118906385 110627845 730629403 ...

output:

1282281303
415291693
522831472
1252210280
39577946
444583189
1118151214
684430776
1692991237
1062388551
1126078143
865200351
523975245
185520692
630555246
908114709
1360950425
1273670364
979929816
1704437616
94678350323152
789916640
371805156
866663147
1048697552
404418517
1931884589
108636057
66929...

result:


Test #7:

score: 0
Memory Limit Exceeded

input:

1000000
732367509 105027907 958920212 886798715 102486738 813075884 301085392 242303497 979657287 944859684 307768 438158233 561755409 740706505 791145209 283862713 828081846 771569552 59044985 600549571 191330226 438693570 36976319 810654215 220068818 771875421 740642902 839964155 206129566 2065543...

output:

737005965
1418478892
655227677
1041683300
628704923
1068983096
1444870651
423501584
0
1374829960
334961542
1401851437
525160744
728361310
1373032536
1536352442
751392014
730978870
1699856097
282869761
1133383708
1165799393
175361560
865424362
86725817
2167409981
1581854807
374269658
897712266
146166...

result:


Test #8:

score: 0
Memory Limit Exceeded

input:

1000000
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 ...

output:

298
15
225
28
12
0
0
0
131
1
3
1
1
1
1
0
286
1
0
0
8
0
0
3
0
3
1
0
0
0
0
0
3
0
0
0
10
427
358
1
1
9
1
3
340
0
0
2
1
4
0
6
0
0
0
0
3
13
1
3
1
1
2
3
0
1
0
2
20
1
8
2
0
0
6
1
1
16
1
1
3
0
0
9
2
0
0
1
0
2
3
1
0
2
17
1
1
10
34
0
0
77
1
0
1
73
470
1
1
0
10
342
10
178
534
580
18
1
2
2
0
0
14
0
0
1
13
0
0
0...

result:


Test #9:

score: 0
Memory Limit Exceeded

input:

1000000
465660691 982007525 816592310 377030959 572981469 679249520 86377999 709561525 940473306 35102782 886143915 792819787 903287397 264564177 857982095 91486434 217197704 123118964 383387342 820268798 497623987 255010796 607884194 848568529 38169627 197987657 421323589 664004905 485409127 696844...

output:

18213055510
784351490
579128991
138360146
275400654
1384234654
64716568
3622772898
726570366
7317907753
12275724764
528398853
1456723425
1214744688
2159620443
23475037
15778621944
245789356
109738951
2800205709
266246700
102619945
18394155027
1556076353
416546006
233553302
978264700
4806151271
13875...

result:


Test #10:

score: 0
Memory Limit Exceeded

input:

1000000
665830082 788228483 245541444 289601309 641764988 150723484 925214020 557415731 310210969 379707835 517820381 883917428 134445288 775557009 444476671 89856268 655841087 888410254 37788122 694551869 563331754 488108584 839551943 415095075 445425438 35452604 562044723 640544531 146258096 66852...

output:

431856043
520373616
276923210
1367683452
690593117
17548729835
762015332
1905967929
1184478776
594507511
361718855
3840013863
306250439
62500137
493406069
786078000
907157607
4162775188
1904976755
877965179
13446619509
1013123764
11151673647
13883746125
542306751
1978036157
937968345
1131991994
3562...

result: