QOJ.ac

QOJ

IDProblemSubmitterResultTimeMemoryLanguageFile sizeSubmit timeJudge time
#840098#9725. LotteryjiangzhihuiAC ✓1289ms169660kbC++141.5kb2025-01-02 15:32:232025-01-02 15:32:24

Judging History

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

  • [2025-01-02 15:32:24]
  • 评测
  • 测评结果:AC
  • 用时:1289ms
  • 内存:169660kb
  • [2025-01-02 15:32:23]
  • 提交

answer

#include<bits/stdc++.h>
using namespace std;
const int mod=1e9+7;
void solve(int idx){
    map<int,int> mp;
    int n;
    cin>>n;
    for(int i=1;i<=n;i++){
        int a,x;
        cin>>a>>x;
        mp[a]+=x;
    }
    for(auto it=mp.begin();it!=mp.end();it++){
        int a=it->first;
        int x=it->second;
        mp[a]=0;
        for(int j=0;(1<<j)<=x;j++){
            if(x>=(1<<j)){
                mp[a+j]++;
                x-=(1<<j);
            }
        }
        if(x>0){
            for(int j=0;(1<<j)<=x;j++){
                if((x>>j)&1){
                    mp[a+j]++;
                    x-=(1<<j);
                }
            }
        }
    }
    vector<pair<int,int>> b;
    b.push_back(make_pair(-5,0));
    int cnt=0;
    for(auto v:mp){
        b.push_back(v);
        cnt++;
    }
    //vector<vector<int>> dp(b.size(),vector<int>(2,0));
    int ans=1;
    //dp[0][0]=1;
    int dp0=1;
    int dp1=0;
    for(int i=1;i<=cnt;i++){
        if(b[i-1].first+1!=b[i].first){
            ans=1ll*ans*((dp0+dp1)%mod)%mod;
            dp0=1;
            dp1=0;
        }
        if(b[i].second==2){
            dp1=(dp0+dp1)%mod;
        }
        dp0=dp0*2%mod;
    }
    ans=1ll*ans*((dp0+dp1)%mod)%mod;
    cout<<"Case #"<<idx<<": "<<ans<<'\n';
}
int main(){
    ios::sync_with_stdio(false);
    cin.tie(0);
    cout.tie(0);
    int T;
    cin>>T;
    int idx=1;
    while(T--){
        solve(idx++);
    }
    return 0;
}

这程序好像有点Bug,我给组数据试试?

Details

Tip: Click on the bar to expand more detailed information

Test #1:

score: 100
Accepted
time: 1ms
memory: 3584kb

input:

2
3
1 1
2 1
3 1
3
1 1
2 2
3 3

output:

Case #1: 8
Case #2: 18

result:

ok 2 lines

Test #2:

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

input:

100
3
14 14
9 12
8 17
3
26 3066725
19 3460487
8 2992323
3
1 13014079
7 11948973
26 4846920
3
9 17117727
7 12599223
1 3986051
3
15 7310145
10 33800431
4 23981598
3
12 6041740
6 48783713
9 49166903
3
6 23123493
13 41855136
3 18453412
3
22 31889237
26 60412072
12 25347349
3
18 47343610
6 15422850
15 25...

output:

Case #1: 630
Case #2: 13622423
Case #3: 424159340
Case #4: 192474401
Case #5: 158386024
Case #6: 828790298
Case #7: 63100320
Case #8: 471306532
Case #9: 802622433
Case #10: 880894712
Case #11: 808199974
Case #12: 745029259
Case #13: 79764776
Case #14: 674457749
Case #15: 292605832
Case #16: 47526282...

result:

ok 100 lines

Test #3:

score: 0
Accepted
time: 2ms
memory: 3560kb

input:

100
7
2 18
50 19
7 16
8 11
23 10
53 18
33 11
7
50 1498090
41 6906187
28 6959175
48 5209073
58 1594065
1 9282250
25 7108360
7
53 5854804
26 7539508
40 16328548
49 15036483
18 10094218
19 14131838
63 11078670
7
20 6707719
4 29142440
25 23114982
18 25196693
28 20494610
15 19284789
7 7824152
7
39 325876...

output:

Case #1: 16041168
Case #2: 148219634
Case #3: 37911870
Case #4: 133458579
Case #5: 285221747
Case #6: 550882261
Case #7: 201668789
Case #8: 130980850
Case #9: 970905004
Case #10: 294130930
Case #11: 123255088
Case #12: 498117736
Case #13: 114876651
Case #14: 640528873
Case #15: 729504579
Case #16: 4...

result:

ok 100 lines

Test #4:

score: 0
Accepted
time: 144ms
memory: 3848kb

input:

100
379
1600 13
2156 11
1523 18
106 19
1630 13
3191 18
1827 12
2339 19
3309 14
3102 17
1946 10
1390 19
2982 15
1898 18
2695 18
2183 10
2748 13
2870 14
2656 16
2838 12
2751 19
3295 13
1548 17
1702 19
2276 16
1878 14
3303 15
2471 18
2210 17
1001 11
2631 10
1742 14
739 20
2835 19
1478 19
1643 17
1243 2...

output:

Case #1: 956407847
Case #2: 428775871
Case #3: 72374269
Case #4: 815826197
Case #5: 248115878
Case #6: 855276153
Case #7: 189306941
Case #8: 294949030
Case #9: 595337133
Case #10: 497733638
Case #11: 546095667
Case #12: 970049869
Case #13: 867994899
Case #14: 456419871
Case #15: 881569832
Case #16: ...

result:

ok 100 lines

Test #5:

score: 0
Accepted
time: 373ms
memory: 4096kb

input:

100
927
5299 17
29 15
143 13
690 20
3654 13
5483 17
7101 13
5407 18
3746 20
2570 16
4705 11
7106 15
6329 18
537 14
2127 17
8193 19
1559 14
6646 18
6138 17
6736 19
47 10
4559 13
4580 14
4703 19
8128 10
6124 20
2702 19
3040 10
7397 14
3545 20
8301 16
7495 11
5062 20
7315 19
2551 18
7657 11
1162 13
551...

output:

Case #1: 923169636
Case #2: 636531743
Case #3: 757255091
Case #4: 52250837
Case #5: 431373325
Case #6: 363293747
Case #7: 286294543
Case #8: 597825693
Case #9: 889816758
Case #10: 578776852
Case #11: 101085218
Case #12: 899261603
Case #13: 578043358
Case #14: 805069885
Case #15: 518914574
Case #16: ...

result:

ok 100 lines

Test #6:

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

input:

1
85539
844934 716250469
607589 323301671
13609 307407486
732394 619357209
177497 622626322
61942 797845334
420871 782238937
649289 290205999
528934 945724112
4234 526292159
6731 238256809
430675 967751594
836949 788114514
152012 955437787
763959 184736207
347225 175272638
491896 367572979
95011 900...

output:

Case #1: 764597677

result:

ok single line: 'Case #1: 764597677'

Test #7:

score: 0
Accepted
time: 521ms
memory: 41748kb

input:

1
81636
502459 601021774
208328 953106627
444126 128752755
624476 440716715
607226 709040753
185964 324785618
450952 178708941
104974 775830666
341681 584578537
446342 686035233
445130 380501451
148494 244218148
22462 303583475
337512 899063212
560306 196467486
398364 412910256
575658 699536961
4397...

output:

Case #1: 46013046

result:

ok single line: 'Case #1: 46013046'

Test #8:

score: 0
Accepted
time: 675ms
memory: 53656kb

input:

1
100000
675873 834165842
270220 141212250
76642 439877243
732704 375791743
208891 406177659
485049 962539403
167122 152109974
164121 733820008
736066 164922979
518172 459564512
145817 482261842
580282 265580030
861239 109598764
285311 667393538
138628 498991465
389289 860570720
581714 269014075
460...

output:

Case #1: 812503821

result:

ok single line: 'Case #1: 812503821'

Test #9:

score: 0
Accepted
time: 477ms
memory: 32616kb

input:

1
100000
356427 856319667
348996 780101495
343501 502718679
392448 878124888
46510 939663237
65312 426512067
387767 103955914
105800 149116726
330287 892923707
318042 321691720
155404 518681019
274882 283466294
415772 814332676
346530 327522273
105329 824959078
380829 831433675
70635 190485971
35959...

output:

Case #1: 743305849

result:

ok single line: 'Case #1: 743305849'

Test #10:

score: 0
Accepted
time: 677ms
memory: 52420kb

input:

1
100000
636980 718440733
851965 367957970
777657 405527357
319487 649490782
873729 582148804
337062 781484742
251515 435755737
180183 775478973
724508 510003300
285209 694865056
430399 715132956
745290 972431445
503010 979079947
64644 147683767
63517 259926681
405073 291250502
483749 783036754
4584...

output:

Case #1: 982233644

result:

ok single line: 'Case #1: 982233644'

Test #11:

score: 0
Accepted
time: 611ms
memory: 45556kb

input:

1
100000
1907 655329504
266811 135226776
94440 645075349
94862 247002714
657907 628030539
520252 215396439
584334 850190403
510548 922650405
486090 207900775
643773 675199854
525822 465842164
505823 553439477
429294 936697875
211887 598021737
46942 573407886
670816 691573673
301271 583893654
96104 7...

output:

Case #1: 398950070

result:

ok single line: 'Case #1: 398950070'

Test #12:

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

input:

100
14
807163 16
5581071 20
515128 16
532577 13
562521 20
852661 11
356515 13
1381832 10
2565546 14
244717 17
3586153 11
821561 20
988878 17
602901 13
14
15489937 8451730
15725020 6782118
19135523 7175789
19112100 8399252
19589092 1339101
19947398 1638506
19421964 2178764
19292162 5215621
17733695 1...

output:

Case #1: 6172591
Case #2: 968082388
Case #3: 693136304
Case #4: 253682483
Case #5: 203642265
Case #6: 663265937
Case #7: 532728139
Case #8: 899182912
Case #9: 908853850
Case #10: 281050196
Case #11: 259672679
Case #12: 682527538
Case #13: 619962965
Case #14: 487329277
Case #15: 967124138
Case #16: 8...

result:

ok 100 lines

Test #13:

score: 0
Accepted
time: 9ms
memory: 3696kb

input:

100
18
6278594 18
5785903 18
9939075 16
975547 17
8035123 12
8375111 20
7880471 17
5677556 18
9064497 16
5704122 12
2142259 14
5281097 14
8845294 13
2697145 19
9027731 15
8591413 13
9267357 18
6880702 13
18
17559977 5636505
18552793 2909901
19193428 3649613
19530244 9729707
17212209 1768042
18805861...

output:

Case #1: 269499126
Case #2: 314790097
Case #3: 954696444
Case #4: 847120706
Case #5: 87540218
Case #6: 926412153
Case #7: 546827312
Case #8: 450603665
Case #9: 169516705
Case #10: 401159240
Case #11: 242920950
Case #12: 13131785
Case #13: 767676840
Case #14: 63744202
Case #15: 22595888
Case #16: 809...

result:

ok 100 lines

Test #14:

score: 0
Accepted
time: 324ms
memory: 4320kb

input:

100
433
9230151 10
9552643 12
9915768 14
6485470 16
9059932 14
9302074 13
8501044 12
6318006 16
9284661 16
9307752 10
6575399 13
8746325 11
9355342 13
6628184 18
9846913 11
8300491 19
9252749 17
9444868 10
9271103 15
5923633 11
9799402 16
8029115 20
8556187 15
9424096 12
9955867 15
5805410 11
749602...

output:

Case #1: 315406992
Case #2: 222079822
Case #3: 481455954
Case #4: 768903652
Case #5: 700859496
Case #6: 132810319
Case #7: 190596641
Case #8: 822324441
Case #9: 226905103
Case #10: 81604678
Case #11: 171603587
Case #12: 837225536
Case #13: 162554480
Case #14: 486158257
Case #15: 197463921
Case #16: ...

result:

ok 100 lines

Test #15:

score: 0
Accepted
time: 815ms
memory: 4988kb

input:

100
981
1226830 18
280253 12
1611531 11
551332 15
1902800 19
3201833 17
2729976 17
2119377 10
912624 13
772186 10
456349 12
459835 13
2160141 11
929790 20
25675 16
355360 15
857878 20
41075 16
554310 18
1524770 14
1346563 20
1589345 11
220167 18
250095 17
1328575 18
794583 16
3489835 20
4557161 12
1...

output:

Case #1: 462063929
Case #2: 469985634
Case #3: 310625287
Case #4: 522078696
Case #5: 737734043
Case #6: 115569309
Case #7: 709170415
Case #8: 808063669
Case #9: 885500802
Case #10: 38590399
Case #11: 231151884
Case #12: 610207058
Case #13: 987487840
Case #14: 307441455
Case #15: 380046787
Case #16: ...

result:

ok 100 lines

Test #16:

score: 0
Accepted
time: 1222ms
memory: 167336kb

input:

1
99272
786335874 951491632
947619105 165671392
890940232 149054216
992379150 300750395
909241844 602696917
746108979 413944713
811633553 438414224
935009303 684767338
914161697 745763147
958515704 679939592
967313983 197893815
943120808 543429954
975648891 556220712
886618069 934660082
933356612 59...

output:

Case #1: 768276073

result:

ok single line: 'Case #1: 768276073'

Test #17:

score: 0
Accepted
time: 1200ms
memory: 163980kb

input:

1
95369
733224765 165175390
994237162 679556171
699741643 735253882
966383579 202034669
918144067 776952452
976690195 731749194
828405069 798036800
804322051 225481845
707274490 504356129
403729973 597734029
967749648 412473481
846548451 380275019
991959509 146701157
930665105 102537833
847072003 70...

output:

Case #1: 483448518

result:

ok single line: 'Case #1: 483448518'

Test #18:

score: 0
Accepted
time: 1229ms
memory: 169292kb

input:

1
100000
235646900 548764906
19141587 582364848
300842 102884928
274832979 185761007
106594551 274536929
590289740 623703016
95174978 807551342
131342468 824585792
194164412 593970626
71182173 936304048
98075485 281484293
9445928 427025198
32760914 545283670
37626800 448029937
116545306 557405925
86...

output:

Case #1: 211545567

result:

ok single line: 'Case #1: 211545567'

Test #19:

score: 0
Accepted
time: 1236ms
memory: 169660kb

input:

1
100000
984257182 516202983
992934587 972154634
967656260 595098968
821136621 169598203
907394200 900137878
981374039 101557261
930923474 400032720
907030511 480603882
833328963 231786117
930127216 606034127
849680630 441510682
968229306 164200635
905155056 305936105
954156188 515423512
994353223 1...

output:

Case #1: 871783561

result:

ok single line: 'Case #1: 871783561'

Test #20:

score: 0
Accepted
time: 1231ms
memory: 168488kb

input:

1
100000
149851997 908514817
278009900 701260286
498189043 602416157
556070637 548014962
217163607 730339547
818355364 260781428
107846060 794147683
552366109 647418334
660705102 278742431
57080788 972769565
7314219 729758760
452838371 780403112
830886279 378959544
204949423 586295090
824364481 9805...

output:

Case #1: 93989273

result:

ok single line: 'Case #1: 93989273'

Test #21:

score: 0
Accepted
time: 1289ms
memory: 168744kb

input:

1
100000
93355215 303068670
352913613 540100810
285388902 616998629
203541509 225045090
242706385 964636770
237995063 251318247
372444148 419375589
795087361 229799789
504251072 334491087
925377018 740989111
363214335 824317343
887954050 358318836
177444936 406693166
767397947 352236312
588649979 16...

output:

Case #1: 195022529

result:

ok single line: 'Case #1: 195022529'

Extra Test:

score: 0
Extra Test Passed