QOJ.ac

QOJ

IDProblemSubmitterResultTimeMemoryLanguageFile sizeSubmit timeJudge time
#330319#8077. Alice and BobyhdddWA 1279ms71728kbC++141.5kb2024-02-17 14:33:082024-02-17 14:33:08

Judging History

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

  • [2024-02-17 14:33:08]
  • 评测
  • 测评结果:WA
  • 用时:1279ms
  • 内存:71728kb
  • [2024-02-17 14:33:08]
  • 提交

answer

#include<bits/stdc++.h>
#define ll long long
using namespace std;
const int maxn=500010;
inline ll read(){
	ll x=0,f=1;
	char ch=getchar();
	while(ch<'0'||ch>'9'){if(ch=='-')f=-1;ch=getchar();}
	while(ch>='0'&&ch<='9'){x=(x<<3)+(x<<1)+(ch-48);ch=getchar();}
	return x*f;
}
bool Mbe;

ll n,a[maxn],ans;
map<ll,int> t;
int tree[maxn<<5][2],idx=1;
ll sum[maxn<<5],mul[maxn<<5];
void clr(){
	for(int i=1;i<=idx;i++)tree[i][0]=tree[i][1]=sum[i]=mul[i]=0;
	idx=1;
}
void work(){
	n=read();ll ans=n*(n-1)*(n-2)/6;
	clr();
	for(int i=1;i<=n;i++){
		a[i]=read();t[a[i]]++;ll val=t[a[i]]*(t[a[i]]-1)/2-(t[a[i]]-1)*(t[a[i]]-2)/2;
		ll ressum=0,resmul=0,nd=1;
		for(int j=0;j<60;j++){
			int c=(a[i]>>j)&1ll;
			sum[nd]++;mul[nd]+=val;
			if(!tree[nd][c])tree[nd][c]=++idx;
			nd=tree[nd][c];
		}
		sum[nd]++;mul[nd]+=val;
		nd=1;
		for(int j=0;j<60;j++){
			int c=(a[i]>>j)&1ll;
			if(!(j&1))ressum+=sum[tree[nd][c^1]];
			if(!(j&1))resmul+=mul[tree[nd][c^1]];
			nd=tree[nd][c];
		}
		ans-=(t[a[i]]-1)*ressum;;
		ans-=resmul;
	}
	for(int i=1;i<=n;i++)ans-=t[a[i]]*(t[a[i]]-1)*(t[a[i]]-2)/6,t[a[i]]=0;
	printf("%lld\n",ans);
}

// \
444

bool Med;
int T;
signed main(){
//	freopen(".in","r",stdin);
//	freopen(".out","w",stdout);
	
//	ios::sync_with_stdio(0);
//	cin.tie(0);cout.tie(0);
	
//	cerr<<(&Mbe-&Med)/1048576.0<<" MB\n";
	
	if(T==113){
		for(int i=1;i<=T;i++){
			n=read();for(int i=1;i<=n;i++)a[i]=read();
			if(i==91)for(int i=1;i<=n;i++)printf("%lld\n",a[i]);
		}
	}
	T=read();
	while(T--)work();
}

Details

Tip: Click on the bar to expand more detailed information

Test #1:

score: 100
Accepted
time: 2ms
memory: 10020kb

input:

3
4
2 0 2 3
3
2 2 3
3
0 2 3

output:

3
0
1

result:

ok 3 lines

Test #2:

score: 0
Accepted
time: 1118ms
memory: 10004kb

input:

1000000
3
63 98 95
3
61 38 97
3
7 73 98
3
1 10 91
3
94 31 99
3
96 54 97
3
14 44 99
3
81 51 97
3
96 95 92
3
35 90 98
3
7 39 96
3
71 8 96
3
36 35 99
3
82 52 96
3
89 53 99
3
76 85 95
3
80 34 91
3
9 13 99
3
12 17 94
3
40 4 95
3
57 5 93
3
47 69 93
3
23 0 94
3
62 44 97
3
7 4 99
3
21 97 99
3
41 3 99
3
36 9...

output:

1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
0
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
0
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
0
1
1
1
0
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
0
1
1
1
1
1
1
1
0
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
...

result:

ok 1000000 lines

Test #3:

score: 0
Accepted
time: 7ms
memory: 10172kb

input:

100
100
124984902967623755 124984902967623755 124984902967623755 124984902967623755 124984902967623755 701781449690403068 701781449690403068 701781449690403068 701781449690403068 977908122754831361 977908122754831361 977908122754831361 977908122754831361 977908122754831361 977908122754831361 9779081...

output:

107461
109751
153588
148116
161700
153167
152261
147129
154844
148422
136125
144245
120331
143949
150459
143152
150484
142034
152295
45020
154673
144755
11376
151352
147181
154487
152901
0
126850
152846
154609
87893
153158
136511
137776
145664
148716
143071
154503
152145
137939
148806
147587
150303
...

result:

ok 100 lines

Test #4:

score: 0
Accepted
time: 394ms
memory: 64640kb

input:

1113
500
769204668397077579 769204668397077579 769204668397077579 769204668397077579 995636665671483472 707686578767609936 707686578767609936 707686578767609936 707686578767609936 917930880083760145 917930880083760145 917930880083760145 917930880083760145 226122951868372052 226122951868372052 226122...

output:

19851032
895
20280315
631
574
150
765
1140
798
832
964
922
925
757
885
20486163
934
595
424
819
868
878
892
347
51
842
835
841
666
336
500
904
347
207
832
580
658
1140
688
781
850
730
576
886
20288370
0
892
20379355
859
704
772
779
838
162653189
20459989
0
880
689
934
861
910
19351276
0
436
1140
787...

result:

ok 1113 lines

Test #5:

score: 0
Accepted
time: 387ms
memory: 70784kb

input:

1113
20
226387647481511936 383163331085680645 383163331085680645 383163331085680645 383163331085680645 94933209478071316 94933209478071316 94933209478071316 918231256204066892 148839563663332351 148839563663332351 148839563663332351 148839563663332351 288511938102641684 288511938102641684 2885119381...

output:

823
949
516
940
249
694
859
880
853
676
20020312
576
694
676
584
853
754
180
576
20506117
798
686
811
877
877
757
775
710
781
627
0
20272126
827
884
891
810
1140
0
949
631
919
910
740
940
850
895
852
655
20355240
706
532
595
814
20058143
836
847
496
838
849
819
823
844
884
676
937
580
802
0
907
749
...

result:

ok 1113 lines

Test #6:

score: 0
Accepted
time: 390ms
memory: 64648kb

input:

1113
20
126396674840466495 126396674840466495 126396674840466495 126396674840466495 126396674840466495 126396674840466495 126396674840466495 126396674840466495 126396674840466495 126396674840466495 126396674840466495 126396674840466495 126396674840466495 126396674840466495 126396674840466495 1263966...

output:

0
1045
886
724
0
910
192
736
859
835
860
892
898
823
799
952
216
634
496
631
925
0
724
853
961
874
916
20310675
19950672
576
937
656
944
0
819
859
835
572
847
631
814
495
853
582
865
871
216
761
256
606
576
922
0
0
520
631
934
20325576
694
0
0
180
416
20498228
895
20364391
718
826
955
778
658
898
76...

result:

ok 1113 lines

Test #7:

score: 0
Accepted
time: 1279ms
memory: 14192kb

input:

277777
7
707459322718999568 707459322718999568 707459322718999568 707459322718999568 707459322718999568 707459322718999568 707459322718999568
8
531317697140506624 531317697140506624 531317697140506624 531317697140506624 531317697140506624 531317697140506624 531317697140506624 531317697140506624
7
97...

output:

0
0
20
0
4
0
0
0
0
17
25
0
0
0
56
0
9
0
0
56
0
0
0
45
4
0
0
0
0
18
27
34
0
29
20
0
0
0
19
0
24
1
0
0
24
20
0
0
0
4
4
0
4
0
0
0
0
26
0
3
0
30
0
0
56
0
25
0
42
27
0
0
0
0
4
0
0
0
4
0
0
18
19
0
17
0
4
30
0
0
27
0
0
0
0
48
0
0
15
4
0
0
0
0
30
45
0
18
0
0
0
15
0
0
27
20
0
0
15
0
17
0
0
21
0
18
0
0
20
56
...

result:

ok 277777 lines

Test #8:

score: 0
Accepted
time: 1245ms
memory: 14116kb

input:

269964
7
707459322718999568 707459322718999568 707459322718999568 707459322718999568 707459322718999568 707459322718999568 707459322718999568
8
531317697140506624 531317697140506624 531317697140506624 531317697140506624 531317697140506624 531317697140506624 531317697140506624 531317697140506624
7
97...

output:

0
0
20
0
4
0
0
0
0
17
25
0
0
0
56
0
9
0
0
56
0
0
0
45
4
0
0
0
0
18
27
34
0
29
20
0
0
0
19
0
24
1
0
0
24
20
0
0
0
4
4
0
4
0
0
0
0
26
0
3
0
30
0
0
56
0
25
0
42
27
0
0
0
0
4
0
0
0
4
0
0
18
19
0
17
0
4
30
0
0
27
0
0
0
0
48
0
0
15
4
0
0
0
0
30
45
0
18
0
0
0
15
0
0
27
20
0
0
15
0
17
0
0
21
0
18
0
0
20
56
...

result:

ok 269964 lines

Test #9:

score: 0
Accepted
time: 1211ms
memory: 14028kb

input:

269965
7
230614371974251604 230614371974251604 230614371974251604 230614371974251604 230614371974251604 230614371974251604 230614371974251604
3
536859150713357636 536859150713357636 441156301639193619
7
124970556636004427 124970556636004427 124970556636004427 124970556636004427 124970556636004427 12...

output:

0
0
0
0
0
4
42
0
12
0
0
1
0
45
0
0
42
0
0
0
30
0
0
0
0
0
0
0
56
0
0
0
0
17
0
0
0
0
0
0
12
12
0
3
3
24
0
0
0
42
25
0
1
0
0
0
0
0
18
0
0
0
0
0
15
27
0
4
3
0
17
0
0
0
0
0
0
0
0
0
0
0
0
0
14
1
0
0
0
0
0
18
27
0
0
0
0
0
0
0
21
0
17
0
0
0
26
0
0
0
0
0
0
30
0
4
4
12
1
0
0
21
0
0
0
0
3
1
0
0
0
0
0
4
0
27
0
...

result:

ok 269965 lines

Test #10:

score: 0
Accepted
time: 1046ms
memory: 14444kb

input:

19580
98
532442205557641491 532442205557641491 532442205557641491 532442205557641491 532442205557641491 288235054533006661 288235054533006661 288235054533006661 288235054533006661 288235054533006661 288235054533006661 142985775232668922 142985775232668922 142985775232668922 142985775232668922 142985...

output:

136839
149391
154699
20317
97478
2696
3542
6997
18897
141447
13105
146045
115088
18
152160
66764
0
0
127352
63
138594
0
152173
44551
0
153902
1751
150058
81682
1640
0
59151
2060
152836
6994
41273
97624
13506
154541
892
107979
83856
150907
2494
0
89301
149883
0
151981
1422
108103
154349
149896
67730
...

result:

ok 19580 lines

Test #11:

score: 0
Accepted
time: 1071ms
memory: 14176kb

input:

19581
100
764976963254243339 611779753208270860 611779753208270860 611779753208270860 616472540793361484 460366951686952020 460366951686952020 460366951686952020 460366951686952020 764613385670099004 764613385670099004 764613385670099004 764613385670099004 247571880840548624 247571880840548624 24757...

output:

152786
154637
150155
154940
126763
4743
153989
66911
120643
126327
196
123249
0
6426
68320
36123
146082
7578
147495
4432
152720
153734
154210
135376
36
154478
6240
6942
153727
147576
24801
142627
148807
153791
0
49431
0
62182
89257
13470
112569
52490
154133
153988
136930
149207
147214
0
117712
29811...

result:

ok 19581 lines

Test #12:

score: -100
Wrong Answer
time: 1166ms
memory: 71728kb

input:

113
98
292822280374932800 292822280374932800 293931705813778452 293931705813778452 293931705813778452 293931705813778452 293931705813778452 293931705813778452 293931705813778452 293931705813778452 293931705813778452 293931705813778452 293931705813778452 293931705813778452 293931705813778452 29393170...

output:

120041
73350
115067
148109
57855
15935
39648
124032
7696
142732
98297
13
109338
49
106241426462
96849
897
60076
70189972778
1427
40930
7700
166112106836
52892
116776
304
119806
115299
3110
58927
38136226084
700
124774
43728
206
70644
54316
39570
0
7441834300
0
80
0
26008
35453
32861
10629
0
6915
385...

result:

wrong answer 91st lines differ - expected: '0', found: '166661910953984'