QOJ.ac

QOJ

ID题目提交者结果用时内存语言文件大小提交时间测评时间
#396427#2874. First to SolvezhouhuanyiAC ✓627ms19900kbC++142.1kb2024-04-22 19:01:192024-04-22 19:01:20

Judging History

This is the latest submission verdict.

  • [2024-04-22 19:01:20]
  • Judged
  • Verdict: AC
  • Time: 627ms
  • Memory: 19900kb
  • [2024-04-22 19:01:19]
  • Submitted

answer

#include<iostream>
#include<cstdio>
#define N 501
#define K 26
#define M 300
#define mod 998244353
using namespace std;
int read()
{
	char c=0;
	int sum=0;
	while (c<'0'||c>'9') c=getchar();
	while ('0'<=c&&c<='9') sum=sum*10+c-'0',c=getchar();
	return sum;
}
int fast_pow(int a,int b)
{
	int res=1,mul=a;
	while (b)
	{
		if (b&1) res=1ll*res*mul%mod;
		mul=1ll*mul*mul%mod,b>>=1;
	}
	return res;
}
void Adder(int &x,int d)
{
	x+=d;
	if (x>=mod) x-=mod;
	return;
}
void Adder2(int &x,int d)
{
	x+=d;
	if (x<0) x+=mod;
	return;
}
int n,m,k,a[N+1][K+1],fac[K+1],invfac[K+1],ans[N+1],A[N+1],B[N+1],dp[K+1][M+1],DP[N+1][K+1][M+1],res[N+1];
int main()
{
	int cnt;
	fac[0]=1;
	for (int i=1;i<=K;++i) fac[i]=1ll*fac[i-1]*i%mod;
	invfac[K]=fast_pow(fac[K],mod-2);
	for (int i=K-1;i>=0;--i) invfac[i]=1ll*invfac[i+1]*(i+1)%mod;
	n=read(),m=read(),k=read();
	for (int i=1;i<=n;++i)
	{
		for (int j=0;j<=m;++j)
			for (int t=0;t<=k;++t)
				dp[j][t]=0;
		dp[0][0]=1,cnt=0;
		for (int j=1;j<=m;++j)
		{
			a[i][j]=read();
			if (a[i][j])
			{
				cnt++;
				for (int t=cnt;t>=1;--t)
					for (int s=a[i][j];s<=k;++s)
						Adder(dp[t][s],dp[t-1][s-a[i][j]]);
			}
		}
		for (int j=1;j<=m;++j)
			if (a[i][j])
			{
				for (int t=1;t<=cnt;++t)
					for (int s=a[i][j];s<=k;++s)
						Adder2(dp[t][s],-dp[t-1][s-a[i][j]]);
				for (int t=0;t<=cnt-1;++t)
					for (int s=0;s<=k-a[i][j];++s)
						Adder(DP[i][j][s+a[i][j]],1ll*dp[t][s]*fac[t]%mod*fac[cnt-1-t]%mod*invfac[cnt]%mod);
				for (int t=cnt;t>=1;--t)
					for (int s=a[i][j];s<=k;++s)
						Adder(dp[t][s],dp[t-1][s-a[i][j]]);
			}
	}
	for (int i=1;i<=m;++i)
	{
		for (int j=1;j<=n;++j) res[j]=1;
		for (int j=0;j<=k;++j)
		{
			if (j)
			{
				for (int t=1;t<=n;++t) Adder2(res[t],-DP[t][i][j-1]);
			}
			A[0]=B[n+1]=1;
			for (int t=1;t<=n;++t) A[t]=1ll*A[t-1]*res[t]%mod;
			for (int t=n;t>=1;--t) B[t]=1ll*B[t+1]*res[t]%mod;
			for (int t=1;t<=n;++t) Adder(ans[t],1ll*A[t-1]*B[t+1]%mod*DP[t][i][j]%mod);
		}
	}
	for (int i=1;i<=n;++i) printf("%d\n",ans[i]);
	return 0;
}

詳細信息

Test #1:

score: 100
Accepted
time: 0ms
memory: 3820kb

input:

5 3 60
30 0 0
40 20 0
30 60 0
0 0 0
60 60 1

output:

1
1
249561089
0
499122177

result:

ok 5 number(s): "1 1 249561089 0 499122177"

Test #2:

score: 0
Accepted
time: 0ms
memory: 3840kb

input:

1 1 1
1

output:

1

result:

ok 1 number(s): "1"

Test #3:

score: 0
Accepted
time: 0ms
memory: 3864kb

input:

1 1 1
0

output:

0

result:

ok 1 number(s): "0"

Test #4:

score: 0
Accepted
time: 0ms
memory: 3840kb

input:

5 5 10
0 4 5 6 0
0 7 10 2 5
2 0 5 5 0
1 0 4 8 1
2 2 8 7 2

output:

53696073
326278016
117193580
610846980
22645359

result:

ok 5 number(s): "53696073 326278016 117193580 610846980 22645359"

Test #5:

score: 0
Accepted
time: 1ms
memory: 4092kb

input:

10 15 100
42 52 40 31 0 23 31 39 2 33 99 49 36 84 84
97 67 79 9 24 91 97 29 67 31 44 67 32 48 21
82 91 72 64 21 29 44 55 35 100 80 47 51 55 1
17 5 93 13 30 21 35 9 78 2 36 33 87 84 0
34 84 71 60 34 19 0 26 61 54 53 33 0 93 69
8 8 74 10 0 10 71 20 94 19 51 27 12 40 10
24 0 3 0 63 45 60 9 39 81 92 100...

output:

150531227
23110924
161622772
254332679
855883357
446312969
16839587
740310142
694764451
124797326

result:

ok 10 numbers

Test #6:

score: 0
Accepted
time: 1ms
memory: 6096kb

input:

15 10 100
16 13 3 29 6 72 89 0 76 45
22 67 27 63 61 0 21 88 97 59
78 76 6 8 61 88 0 86 61 13
95 90 91 6 37 22 54 95 7 19
9 38 2 66 47 55 56 95 28 79
41 29 84 92 79 19 46 90 3 2
25 98 29 57 80 17 66 59 31 29
68 0 0 94 37 96 67 8 4 0
81 47 0 39 44 42 0 52 64 51
14 0 45 81 36 0 35 95 62 31
84 30 14 66 ...

output:

883698369
767115964
162984992
682079780
736299613
865532902
346065944
939122386
63209181
872789778
224349982
688266441
93238079
20652762
475952125

result:

ok 15 numbers

Test #7:

score: 0
Accepted
time: 26ms
memory: 6624kb

input:

100 20 200
48 21 24 25 148 108 167 115 16 77 48 145 150 125 70 24 125 145 0 160
97 41 168 143 118 114 124 110 63 154 155 0 68 178 144 173 36 183 0 129
182 198 180 185 151 7 160 186 146 103 68 135 131 105 69 119 86 36 47 117
34 0 87 98 61 142 0 60 113 182 0 134 34 55 184 0 115 13 22 63
88 152 125 69 ...

output:

18912066
608644708
895710707
921381294
381715428
379134223
155744997
622380815
686801303
909135023
391491625
315787175
340921327
87883019
230215814
680703986
329541188
77829898
674882637
557302087
699245741
269572552
856618343
919955245
807321898
287233394
511118969
800019208
759263505
693635068
279...

result:

ok 100 numbers

Test #8:

score: 0
Accepted
time: 289ms
memory: 19740kb

input:

500 26 300
265 211 232 167 17 262 41 57 0 27 116 0 49 272 150 250 286 18 101 157 176 183 178 156 133 283
0 282 41 64 198 45 171 153 131 0 177 287 135 61 191 277 0 173 98 185 156 0 56 12 149 269
106 264 222 203 23 13 248 65 246 0 198 245 57 9 291 111 185 161 13 123 144 0 182 289 197 82
76 60 280 247 ...

output:

547725469
357894201
625167856
417304288
434542938
506088087
398186814
74145888
694228521
514931781
708626009
337300823
564294070
9325078
538109918
463800538
583776633
735587879
918405913
307249012
628697279
206381069
991029629
451417943
175435663
782852355
622488784
593508579
348414390
161845175
307...

result:

ok 500 numbers

Test #9:

score: 0
Accepted
time: 356ms
memory: 19736kb

input:

500 26 300
289 227 50 220 80 145 187 112 51 133 48 100 102 179 114 182 43 186 146 217 199 234 298 178 150 39
9 84 286 143 58 107 256 176 69 249 248 253 239 153 188 208 281 47 141 162 68 33 195 15 94 59
128 158 150 283 12 87 251 177 178 138 213 278 244 214 173 220 26 270 108 3 171 160 179 228 73 277
...

output:

740241757
79849902
725267308
283195457
568583350
319283347
667055116
478054965
265879345
463870251
635527721
306890982
869573739
290169218
101687381
26281858
159978256
130493229
185236082
161105245
17390683
619471235
637476561
890792057
241383522
106311615
833113785
538911027
627645486
173979556
116...

result:

ok 500 numbers

Test #10:

score: 0
Accepted
time: 127ms
memory: 18488kb

input:

500 26 300
0 255 94 0 0 281 72 0 62 0 188 72 0 0 163 75 80 265 132 0 0 0 0 0 0 0
0 0 0 133 235 0 0 277 0 227 0 0 121 56 0 66 195 0 0 226 0 19 16 0 268 150
0 72 132 240 0 229 0 158 0 0 213 122 0 0 62 0 244 0 0 171 42 0 0 247 0 0
144 289 0 59 0 0 0 287 0 0 278 0 0 0 0 95 0 0 0 62 61 186 85 0 87 12
0 2...

output:

156662102
653619119
525305299
417308334
490473030
20420161
49804876
355307847
672478610
112646766
488210250
18167375
341143261
417002174
24464063
994193362
210890268
10387798
730461474
54641379
414493674
859910700
719924660
920409157
988052607
505160214
401663111
457457318
302520337
640239707
910874...

result:

ok 500 numbers

Test #11:

score: 0
Accepted
time: 49ms
memory: 3928kb

input:

500 26 300
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:

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
0
0
0
0
...

result:

ok 500 numbers

Test #12:

score: 0
Accepted
time: 617ms
memory: 19820kb

input:

500 26 300
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 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 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 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 1 1 1 1 1...

output:

155691057
155691057
155691057
155691057
155691057
155691057
155691057
155691057
155691057
155691057
155691057
155691057
155691057
155691057
155691057
155691057
155691057
155691057
155691057
155691057
155691057
155691057
155691057
155691057
155691057
155691057
155691057
155691057
155691057
155691057
...

result:

ok 500 numbers

Test #13:

score: 0
Accepted
time: 207ms
memory: 18788kb

input:

500 26 300
1 0 0 1 0 0 1 1 1 0 1 1 0 1 0 0 1 1 0 1 1 0 0 0 1 0
1 1 1 0 1 0 0 0 1 1 1 1 0 0 1 1 0 1 1 1 0 1 0 1 1 0
1 1 0 1 0 0 0 1 0 0 1 1 1 0 1 0 0 1 0 0 0 0 0 1 1 1
0 1 0 1 1 0 0 0 1 0 1 0 0 0 0 0 0 1 0 1 0 1 0 0 1 1
1 0 1 1 1 1 1 1 0 0 0 0 1 1 0 1 1 0 1 1 0 0 0 0 1 1
1 0 1 1 0 0 1 1 0 0 0 1 1 0 0...

output:

906525995
188326114
831012036
595119870
643359126
625283392
834282710
32688861
829908169
587804700
53825435
597984239
222687588
175250405
761448492
145772550
758221723
252145641
808278764
292713504
518444691
979127788
837814489
354259977
291754824
819572562
954356798
306457233
877871376
216127143
67...

result:

ok 500 numbers

Test #14:

score: 0
Accepted
time: 557ms
memory: 19692kb

input:

500 26 300
3 0 2 1 5 4 2 1 2 1 3 2 1 5 3 5 2 1 2 4 5 3 4 2 2 3
5 1 4 5 2 4 2 4 3 2 3 1 4 3 3 4 5 3 5 2 3 4 2 2 5 4
3 5 4 1 2 1 4 2 1 5 5 4 4 4 4 5 1 0 2 3 4 3 5 4 3 4
4 3 5 1 0 2 1 2 3 3 5 2 5 5 4 2 2 2 2 3 5 2 2 2 3 3
5 4 5 2 5 2 4 2 3 4 3 5 3 2 3 3 5 1 2 5 1 1 3 0 5 3
1 4 5 2 5 5 1 1 5 2 4 3 1 5 5...

output:

359964944
125524705
88541065
174182222
79093995
224961756
349443350
221694658
23992661
694490176
889441254
579016945
690969988
899800395
527409925
18849544
529035093
400331906
99731417
986495005
772358894
282668308
928092083
843257540
260174765
745092571
131854335
200214909
808628992
500660623
63309...

result:

ok 500 numbers

Test #15:

score: 0
Accepted
time: 564ms
memory: 19892kb

input:

500 26 300
3 3 4 4 7 10 8 10 7 4 6 2 0 1 3 0 1 7 10 9 10 10 3 5 3 8
10 7 1 7 1 6 7 2 2 7 4 1 9 4 7 9 10 4 5 0 8 5 9 8 0 1
5 5 2 0 9 0 4 10 6 4 7 6 8 3 0 10 7 8 1 7 4 10 9 5 1 1
4 9 5 10 3 4 8 8 4 10 3 4 10 9 9 7 7 6 4 6 1 3 5 1 9 5
4 6 4 9 5 10 5 9 0 10 5 2 8 0 9 10 5 8 3 2 6 7 1 4 9 10
4 10 9 7 5 3...

output:

505876217
618211264
431142003
744619070
770720335
359369551
196868219
50614157
954430417
388996963
344667010
438619120
93735133
390346716
553173284
880923527
36561256
421766578
382804699
174737527
756524924
525331275
96155932
192025
419175497
930590526
889293964
85181755
971004160
440792648
27680241...

result:

ok 500 numbers

Test #16:

score: 0
Accepted
time: 553ms
memory: 19760kb

input:

500 26 300
15 1 6 13 15 16 9 0 15 0 14 10 10 9 12 5 9 16 16 4 14 7 7 16 1 7
12 0 0 1 17 18 13 2 19 0 10 4 18 19 13 1 4 16 12 7 11 0 2 10 13 8
17 10 5 4 3 11 20 2 16 9 11 5 5 14 19 20 11 3 13 3 16 12 13 6 5 3
5 0 4 5 0 7 2 20 17 14 11 8 11 8 13 8 6 18 18 12 1 0 4 0 18 0
0 2 2 6 1 1 15 14 13 5 18 9 7 ...

output:

312804217
492551499
12960163
276157876
42746789
906650731
645272009
719874943
140434823
379387262
505368687
756249620
712645877
592015053
699774298
615567435
162422387
107761156
428482766
125239075
247718770
162925572
574358731
22604666
659498954
47436721
974919545
586682887
561215833
486330367
4216...

result:

ok 500 numbers

Test #17:

score: 0
Accepted
time: 534ms
memory: 19896kb

input:

500 26 300
46 10 28 35 46 33 45 48 24 4 27 1 6 43 2 22 14 11 2 18 38 12 15 12 44 23
41 44 49 9 17 30 0 46 12 49 34 37 5 1 14 37 34 23 16 35 10 17 38 40 9 12
49 31 0 0 31 3 41 18 8 39 33 6 14 34 50 33 1 48 0 42 6 6 28 47 33 42
29 47 44 34 20 50 45 19 50 21 33 35 11 14 23 30 43 28 2 3 0 43 9 12 2 49
1...

output:

18742456
800545554
829901674
910031433
510949271
948994472
799641815
839169972
695466318
805268920
923862732
28745227
154540469
580310342
399584105
749309005
167298951
962543647
416609644
552498001
693610320
642720332
759994064
297444501
379437149
506448872
676139701
872822266
394758839
45658000
401...

result:

ok 500 numbers

Test #18:

score: 0
Accepted
time: 493ms
memory: 19736kb

input:

500 26 300
79 0 8 13 55 68 45 61 95 65 69 95 27 55 49 47 91 84 61 57 27 44 59 88 54 5
39 3 65 23 59 72 95 48 68 12 90 27 2 60 28 60 15 1 56 25 0 94 65 68 52 32
91 87 5 95 61 71 78 14 64 61 22 69 23 78 77 70 0 7 100 32 95 49 92 14 23 7
60 60 9 93 87 62 70 8 46 90 18 49 77 93 16 42 41 31 71 66 52 74 4...

output:

748385610
449901859
127435833
810289843
106650967
586683375
829651203
328472527
228119617
3375437
195407683
941115669
907797866
126536704
505841970
641295043
602681525
87418450
425019326
704829667
924283794
549882801
694211045
617794874
645712803
547236604
746172210
343080741
8823082
462513265
89318...

result:

ok 500 numbers

Test #19:

score: 0
Accepted
time: 627ms
memory: 19796kb

input:

500 26 300
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2...

output:

155691057
155691057
155691057
155691057
155691057
155691057
155691057
155691057
155691057
155691057
155691057
155691057
155691057
155691057
155691057
155691057
155691057
155691057
155691057
155691057
155691057
155691057
155691057
155691057
155691057
155691057
155691057
155691057
155691057
155691057
...

result:

ok 500 numbers

Test #20:

score: 0
Accepted
time: 613ms
memory: 19800kb

input:

500 26 300
7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7
7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7
7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7
7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7
7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7
7 7 7 7 7 7 7 7 7 7 7 7 7 7 7...

output:

155691057
155691057
155691057
155691057
155691057
155691057
155691057
155691057
155691057
155691057
155691057
155691057
155691057
155691057
155691057
155691057
155691057
155691057
155691057
155691057
155691057
155691057
155691057
155691057
155691057
155691057
155691057
155691057
155691057
155691057
...

result:

ok 500 numbers

Test #21:

score: 0
Accepted
time: 56ms
memory: 19792kb

input:

500 26 300
300 300 300 300 300 300 300 300 300 300 300 300 300 300 300 300 300 300 300 300 300 300 300 300 300 300
300 300 300 300 300 300 300 300 300 300 300 300 300 300 300 300 300 300 300 300 300 300 300 300 300 300
300 300 300 300 300 300 300 300 300 300 300 300 300 300 300 300 300 300 300 300 3...

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
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
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
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
1
1
1
1
1
1
1
1
1
1
...

result:

ok 500 numbers

Test #22:

score: 0
Accepted
time: 0ms
memory: 3888kb

input:

1 1 300
300

output:

1

result:

ok 1 number(s): "1"

Test #23:

score: 0
Accepted
time: 1ms
memory: 3904kb

input:

1 26 300
279 34 164 110 71 50 187 6 120 0 0 192 136 6 12 131 5 208 163 217 185 66 63 21 294 273

output:

3299261

result:

ok 1 number(s): "3299261"

Test #24:

score: 0
Accepted
time: 0ms
memory: 6020kb

input:

500 1 300
4
182
64
243
52
158
141
252
256
237
266
228
32
257
283
145
1
10
118
172
8
9
111
222
210
240
184
180
128
127
165
150
91
187
148
0
205
182
146
240
2
57
0
126
160
267
5
107
83
172
0
139
41
230
14
260
38
147
285
185
28
283
0
159
190
252
274
173
133
18
176
270
2
39
192
269
107
260
104
277
277
7...

output:

0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
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
1
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
...

result:

ok 500 numbers

Test #25:

score: 0
Accepted
time: 53ms
memory: 6896kb

input:

500 26 300
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 264 0 0 0 0 0 0
0 0 0 0 0 0 0 0 24 0 0 0 0 0 0 0 90 0 0 0 0 147 0 0 0 208
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 188 64 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 29 0 0 0...

output:

0
0
0
0
429799652
748683265
0
496522582
0
1
332748118
0
0
0
0
330148523
0
488723798
0
0
0
0
0
0
0
0
0
310564910
0
0
0
0
0
499122177
0
0
0
0
0
0
603105964
0
873463809
0
0
0
0
0
0
0
301552982
0
0
399297742
0
0
0
0
0
0
0
0
299473306
0
0
0
154820305
0
0
0
0
0
0
0
775545743
0
0
0
0
0
0
0
0
0
404381393
44...

result:

ok 500 numbers

Test #26:

score: 0
Accepted
time: 55ms
memory: 6640kb

input:

500 26 300
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 23 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 23 17 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0 15 22 0 0 0 0 0 17 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:

0
0
0
0
0
0
0
0
665496236
0
0
0
0
0
0
748683265
0
582309206
0
0
0
0
0
0
0
1
332748118
0
0
0
1
0
0
0
0
0
0
0
166374059
0
0
0
0
0
1
0
499122177
0
0
0
665496236
0
0
0
748683265
0
0
0
0
0
0
582309206
0
0
0
0
0
0
332748118
0
0
0
0
0
0
1
0
0
0
0
0
0
0
665496236
0
0
0
0
0
873463809
1
0
0
0
0
0
0
0
0
0
0
1
...

result:

ok 500 numbers

Test #27:

score: 0
Accepted
time: 618ms
memory: 19712kb

input:

500 26 300
1 1 2 1 1 1 2 1 2 2 2 1 1 2 1 2 2 2 2 2 1 2 2 2 2 2
1 1 1 1 2 1 1 2 1 1 1 1 1 1 1 2 2 2 2 1 1 1 2 1 1 2
2 1 1 2 2 2 2 1 1 1 1 1 1 1 1 2 2 2 2 1 1 2 1 1 2 1
2 1 2 2 2 2 1 2 1 2 2 1 2 2 1 1 2 1 1 1 2 1 2 2 1 1
1 2 1 2 2 1 2 2 1 1 1 2 1 2 2 2 2 1 2 2 1 1 1 1 2 1
2 2 2 1 1 2 1 2 1 2 2 1 1 2 2...

output:

196709762
777007458
419522321
118405870
30538115
129765497
602039391
735181507
726841329
683375819
168467839
30161571
800126857
926237789
652938435
187188098
229072510
573492076
927297517
3530862
975097303
314562664
229002331
864839076
213772734
766719837
822003730
449188712
571648332
216700551
1617...

result:

ok 500 numbers

Test #28:

score: 0
Accepted
time: 618ms
memory: 19792kb

input:

500 26 300
2 4 3 3 2 2 1 3 4 4 3 1 2 2 4 3 4 2 3 1 4 1 3 4 3 4
4 2 1 3 3 3 4 1 1 4 4 1 3 2 3 1 2 3 2 2 3 4 1 1 3 4
2 3 4 2 1 4 1 2 4 2 4 2 3 2 3 2 4 1 2 3 4 4 1 2 3 4
3 1 2 1 4 4 4 1 1 1 4 1 3 4 3 2 3 2 3 1 2 4 1 2 2 4
1 4 2 2 1 2 4 4 1 2 2 2 3 1 4 1 3 3 2 2 4 3 3 3 4 4
3 4 2 4 3 3 3 4 4 3 4 1 3 4 1...

output:

12720899
575712597
716097621
640614878
782107374
299887935
713959172
653022185
88506070
870504237
395983984
98180573
715505811
118299501
45719777
699617558
477207777
747977453
755307942
678645032
527734444
774675762
211965774
238916920
93683210
718496774
30775437
850488230
684321310
338519671
574846...

result:

ok 500 numbers

Test #29:

score: 0
Accepted
time: 602ms
memory: 19724kb

input:

500 26 300
7 7 7 7 3 1 2 3 5 3 2 6 3 2 5 5 2 3 7 4 6 3 5 8 6 7
5 7 5 4 3 6 1 8 5 1 7 6 6 6 4 5 6 2 5 8 7 1 6 6 8 8
5 3 5 5 7 4 3 5 1 5 8 4 8 5 8 8 1 1 8 6 8 4 6 2 3 4
6 1 7 6 5 2 1 8 1 7 6 5 6 8 3 4 1 8 4 8 8 4 7 8 7 2
1 8 3 7 7 5 2 7 6 3 8 8 2 1 2 7 2 4 6 8 1 7 8 8 5 8
5 5 3 4 3 4 7 1 6 1 8 2 3 2 1...

output:

803552130
643942013
371281353
384409985
361247753
132765411
204732961
51027285
488269395
339939627
748763618
726447129
690314098
749185295
607180743
901719769
239342599
647078517
329458378
576062778
993204457
977414601
292738214
29576023
611310480
849058869
460664192
421289033
873434850
490609891
88...

result:

ok 500 numbers

Test #30:

score: 0
Accepted
time: 602ms
memory: 19748kb

input:

500 26 300
15 11 13 2 4 11 3 15 13 10 8 14 15 14 16 3 15 11 1 5 2 6 16 7 13 4
16 14 5 10 9 1 15 14 13 3 15 4 3 9 12 1 16 10 10 10 8 9 13 4 16 12
12 5 14 8 10 1 7 1 14 13 15 13 11 14 11 16 8 9 1 1 8 4 5 3 1 3
13 12 9 11 13 16 3 1 10 5 5 10 10 16 4 12 2 6 5 11 6 11 13 12 11 5
1 4 7 9 6 9 14 11 1 14 6 ...

output:

728119478
980276088
525791086
749375747
335967176
743256850
821297097
5651787
355535003
491915041
97975973
928300320
667029735
582477889
31862169
593333165
373606292
684435790
113960370
418993912
794582
855032463
165059201
819942073
220576724
6703606
870615478
727855086
689786503
657446778
360105374...

result:

ok 500 numbers

Test #31:

score: 0
Accepted
time: 586ms
memory: 19764kb

input:

500 26 300
17 5 11 1 7 21 8 30 3 11 2 32 2 21 20 21 31 32 28 9 25 24 23 8 12 10
2 1 22 4 26 32 19 19 27 18 32 4 3 4 27 3 16 3 32 29 28 28 12 32 7 28
28 25 13 17 14 20 10 6 30 31 28 10 10 6 1 8 14 23 19 15 7 31 18 11 19 10
26 8 13 6 7 21 21 31 23 30 5 3 7 16 28 30 20 24 22 30 27 4 17 16 25 31
8 32 10...

output:

944917864
399745221
565233066
733897674
871753694
695962056
18494482
339069687
25905238
598794421
988500696
682391927
540794027
486224411
311643141
568461622
610538949
113228053
633748834
400026787
324881988
475314487
275412927
899384868
625042206
298426993
705199913
140780767
946004168
155730548
38...

result:

ok 500 numbers

Test #32:

score: 0
Accepted
time: 573ms
memory: 19692kb

input:

500 26 300
23 10 22 47 63 17 50 21 55 3 54 6 63 47 4 51 26 40 60 12 8 62 63 3 9 2
47 8 32 5 44 14 12 25 24 3 15 13 19 27 42 52 62 5 30 30 59 51 44 28 42 21
21 63 45 29 25 24 36 60 59 56 48 34 58 49 51 1 24 19 13 10 22 46 31 45 54 21
11 28 54 24 49 7 26 9 51 33 34 55 49 24 15 53 13 32 33 18 38 40 27 ...

output:

906983489
450872944
654671191
434979505
766334173
282451883
218373952
375705558
113652327
61080583
14843968
405335
816165724
388847289
674840041
620494800
912202438
931588543
658526192
458830178
427288202
78508974
383182916
762654807
478668856
384048767
820037705
569843377
452632206
518892931
512854...

result:

ok 500 numbers

Test #33:

score: 0
Accepted
time: 504ms
memory: 19708kb

input:

500 26 300
54 16 45 77 125 62 101 65 2 88 90 41 85 126 62 70 70 18 2 25 104 52 86 98 11 70
44 36 64 103 53 30 89 123 97 83 101 32 98 2 55 57 40 45 95 103 101 21 45 10 10 59
52 67 72 96 69 115 15 4 111 60 17 106 4 127 62 17 22 91 72 60 117 52 32 106 49 40
118 93 29 26 60 22 74 42 35 86 7 58 27 30 102...

output:

584901411
402541904
545908089
711064227
72885832
64707286
902211914
865066683
322315044
567766253
825062829
190455919
702295670
548793297
175263672
915670366
855820851
438256633
804707760
924728418
961305271
834209640
957608346
291035775
73008011
971147769
344766104
749485705
930654368
301922268
475...

result:

ok 500 numbers

Test #34:

score: 0
Accepted
time: 381ms
memory: 19800kb

input:

500 26 300
148 131 68 246 19 246 156 174 190 209 29 19 159 173 239 221 253 100 123 6 98 13 107 199 151 3
168 152 165 223 90 52 213 120 235 146 177 233 3 236 256 138 139 186 204 245 173 183 94 1 210 218
64 201 162 93 57 166 7 185 83 47 41 166 215 63 114 30 79 238 138 90 130 149 91 211 122 205
13 66 1...

output:

43926342
966774890
547850761
936248967
767323062
601542838
331331407
536595098
468957627
726383768
53907166
823083974
291133197
518597994
401846341
865204814
438334984
235628935
552229381
818472283
732147559
13401944
837242439
637404604
108583792
255104538
442798758
760314349
713669060
438337394
710...

result:

ok 500 numbers

Test #35:

score: 0
Accepted
time: 352ms
memory: 19900kb

input:

500 26 300
11 285 260 29 258 265 258 298 13 263 218 34 5 221 3 6 208 231 179 246 65 90 258 269 47 272
178 118 46 213 120 27 282 115 29 266 31 246 133 78 107 175 93 197 60 64 199 176 180 13 296 35
214 252 49 81 141 209 134 265 109 69 109 110 195 14 275 159 28 296 292 134 277 124 25 108 12 56
97 122 2...

output:

144125844
80158429
897277733
252645981
924526139
177125340
931077594
634641881
168648151
742261056
949867188
796149873
522392320
151013783
599505611
119684540
509180552
480400407
356010287
497519581
501802975
172310676
474787100
765534521
363194261
481232653
517749245
967283969
689172753
318019937
6...

result:

ok 500 numbers