UOJ Logo

NOI.AC

ID题目提交者结果用时内存语言文件大小提交时间测评时间
#194358#2162. 无限手套tkswls1003208ms1344kbC++11802b2023-10-15 11:11:512023-10-15 12:31:12

answer

#include<bits/stdc++.h>
using namespace std;
const long long mod = 998244353, MAXN = 10000;
long long n, m, a[1009], b[1009], f[10050];
int main() {
	ios::sync_with_stdio(0);
	cin.tie(0);
	cout.tie(0);
	cin >> n;
	for (int i = 1; i <= n; i++) {
		cin >> a[i] >> b[i];
	}
	f[0] = 1;
	for (int j = 1; j <= n; j++) {
		long long x1 = (a[j] - b[j] + 1 + mod) % mod, x2 = ((a[j] + b[j]) % mod + mod - 2) % mod;
		for (int i = MAXN; i >= 0; i--) {
			f[i + 2] += x1 * f[i] % mod;
			f[i + 2] %= mod;
			f[i + 1] += x2 * f[i] % mod;
			f[i + 1] %= mod;
		}
		int cccnt = 3;
		while (cccnt--) {
			for (int i = 1; i <= MAXN; i++) {
				f[i] += f[i - 1];
				f[i] %= mod;
			}
		}
	}
	cin >> m;
	long long w;
	while (m--) {
		cin >> w;
		cout << f[w] << endl;
	}
	return 0;
}

详细

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

Test #1:

score: 5
Accepted
time: 0ms
memory: 1328kb

input:

10
21 59
15 27
62 71
100 98
88 16
62 25
88 66
72 71
29 31
1 0
10
2
2
3
2
4
5
8
5
6
5

output:

448551
448551
114612322
448551
728853470
277267547
83320298
277267547
38592888
277267547

result:

ok 10 lines

Test #2:

score: 5
Accepted
time: 5ms
memory: 1328kb

input:

17
73 29
79 15
100 35
34 97
39 50
3 48
45 68
47 50
3 28
73 85
89 87
55 46
14 54
49 88
42 73
44 2
16 ...

output:

114883454
27471359
887593781
827351165
86981973
827351165
1392510
114883454
1725
421716985
307599961...

result:

ok 17 lines

Test #3:

score: 5
Accepted
time: 6ms
memory: 1328kb

input:

20
27 19
18 92
81 51
63 60
32 34
51 84
33 42
74 60
77 36
6 21
24 17
75 92
31 53
31 80
8 30
79 26
83 ...

output:

992068581
1969
892548909
238165372
110008477
995194659
179471275
420889444
11928868
179471275
272422...

result:

ok 20 lines

Test #4:

score: 5
Accepted
time: 7ms
memory: 1328kb

input:

25
26 7
38 93
23 54
7 73
19 76
82 2
56 27
97 81
54 28
54 21
62 43
34 40
60 53
15 36
70 16
69 66
63 8...

output:

103269
734406478
345903674
359420380
880946160
271579155
32581827
880946160
966935950
611559579
4653...

result:

ok 25 lines

Test #5:

score: 5
Accepted
time: 7ms
memory: 1332kb

input:

27
80 18
40 71
21 78
53 67
24 18
97 21
56 24
10 32
36 17
48 23
45 44
77 94
93 11
35 32
52 57
73 51
6...

output:

410943243
721573301
181533076
668067998
682080677
863525129
63084931
705139901
452302283
245889941
1...

result:

ok 27 lines

Test #6:

score: 5
Accepted
time: 8ms
memory: 1328kb

input:

30
42 32
4 11
64 52
52 45
8 29
27 81
57 52
51 42
52 85
27 61
69 46
18 43
69 87
77 92
5 23
69 15
21 8...

output:

810744230
839400864
924094824
937834219
316524152
529862398
712976747
219997060
272438710
519978575
...

result:

ok 30 lines

Test #7:

score: 5
Accepted
time: 115ms
memory: 1344kb

input:

500
35 33
42 54
68 92
11 31
78 89
89 33
12 43
40 25
89 74
10 96
72 79
41 27
26 9
89 3
24 32
90 22
86...

output:

932312156
494146079
785555178
893796002
977269012
781615223
830979825
498559680
622697650
783110232
...

result:

ok 500 lines

Test #8:

score: 5
Accepted
time: 188ms
memory: 1344kb

input:

800
67 2
17 90
7 2
80 77
15 8
96 71
77 85
67 83
30 67
21 37
95 0
1 70
69 83
8 28
42 80
32 99
35 13
8...

output:

819268178
372512022
102392595
606603299
679104162
742087129
964962140
472029305
316420903
847635337
...

result:

ok 800 lines

Test #9:

score: 5
Accepted
time: 244ms
memory: 1344kb

input:

1000
117036880 742743701
56908371 507994295
14078772 65839630
907546488 34355343
620471543 368910184...

output:

461522957
903730716
165933947
31761347
91738778
851765265
980107979
991347870
825694579
853918437
81...

result:

ok 1000 lines

Test #10:

score: 5
Accepted
time: 240ms
memory: 1344kb

input:

1000
913953750 388577668
962198313 857512157
801529469 683598255
815720687 278538934
837931460 95491...

output:

612389072
663941278
17225937
951334721
867747447
689590705
268102230
301163238
68448422
283748746
59...

result:

ok 1000 lines

Test #11:

score: 5
Accepted
time: 232ms
memory: 1340kb

input:

1000
686221334 956155197
638206740 299677636
12110365 985957201
296066012 395725665
135750350 202076...

output:

616161259
866485600
452591851
123085226
883880314
899979440
90024622
5824195
547563606
149820827
637...

result:

ok 1000 lines

Test #12:

score: 5
Accepted
time: 243ms
memory: 1344kb

input:

1000
797564334 746000325
114543902 483936681
721653706 427330786
783028161 561100881
560205639 93358...

output:

387718885
796323491
347604564
21260297
989965572
425532127
15088496
19942812
706351242
537306504
896...

result:

ok 1000 lines

Test #13:

score: 5
Accepted
time: 237ms
memory: 1340kb

input:

1000
839212319 281284893
986615727 337004261
337283416 832217943
139479834 143482354
718642613 79109...

output:

709654221
284968005
853870769
244317442
373778049
106308969
562334630
521975360
617513615
90388845
7...

result:

ok 1000 lines

Test #14:

score: 5
Accepted
time: 235ms
memory: 1344kb

input:

1000
256682454 224905163
546469163 405500779
694909527 452737645
118757654 446812736
305219239 49932...

output:

361868779
913435998
464384758
556418430
709291536
677431761
482042298
424118253
104770879
147031476
...

result:

ok 1000 lines

Test #15:

score: 5
Accepted
time: 231ms
memory: 1340kb

input:

1000
896922349 6803764
761865535 943048070
88880191 606683203
70560593 543433355
840830392 692058868...

output:

758319401
712518977
740732861
380595967
393408896
160878359
102588355
265535173
812122783
380107764
...

result:

ok 1000 lines

Test #16:

score: 5
Accepted
time: 229ms
memory: 1344kb

input:

1000
449301829 90031054
325997406 72341047
30416088 913003710
735565029 221233542
491751571 62166318...

output:

259182799
801732641
895963304
728056440
147126321
73980793
152310331
425738358
420629754
906311422
4...

result:

ok 1000 lines

Test #17:

score: 5
Accepted
time: 246ms
memory: 1340kb

input:

1000
832954961 166377984
853572866 869031810
703004519 916522551
674441360 532019428
604496 80785481...

output:

121395962
300319725
321146992
893973609
682719650
596718568
423864083
251143397
891884443
140741137
...

result:

ok 1000 lines

Test #18:

score: 5
Accepted
time: 245ms
memory: 1340kb

input:

1000
630591319 431364812
551848923 931390133
383831685 842422164
638941693 967379955
11797927 362876...

output:

497539048
992868988
944184807
57452325
686959710
938074762
971500412
944069558
141704899
5157624
704...

result:

ok 1000 lines

Test #19:

score: 5
Accepted
time: 245ms
memory: 1340kb

input:

1000
787106265 727082581
227535146 533287459
837875354 738523208
652170865 583327908
506011496 84943...

output:

428205973
383213496
528352208
877162159
777685394
894739088
84479659
652708798
486341093
168396875
9...

result:

ok 1000 lines

Test #20:

score: 5
Accepted
time: 245ms
memory: 1344kb

input:

1000
756021044 519638624
79079358 955991362
303396062 299442290
396653454 370013814
118684193 153986...

output:

132509106
352701347
85904171
738200686
504144431
484013714
732464726
387380222
434892413
481760090
7...

result:

ok 1000 lines