wocaicai @ 2019-12-31 00:02:36
我个人觉得第三篇题解写错了
我是学了他的想法 , 然后自己打了一遍 ,发现错了 , 然后开始查错 , 最后我直接用他的跑了一遍, 发现确实错了 , 但是我觉得很对啊。。
题解代码如下
#include<algorithm>
#include<cstdio>
using namespace std;
int n,m,c[40005]={0},a[40005]={0},b[40005]={0}; //定义数组,b[]为读入的数组,a[]为要离散化后的数组,C[]为树状数组
inline void Add(register int x) //树状数组加入
{
for(;x<=n;x+=(x&-x))
c[x]++; //因为这里只需要1,所以我就写出c[x]++了
}
inline int Sum(register int x) //树状数组求和,同上面的sum(x)
{
register int s=0; //计数的变量
for(;x>0;x-=(x&-x)) //累计
s+=c[x];
return s; //返回结果
}
bool cmp1(const int &x,const int &y) //离散化需要用的,上面有讲
{
return b[x]>b[y];
}
int main()
{
int ans=0; //ans为最后的结果
scanf("%d",&n); //读入n
for(register int i=1;i<=n;i++)
{
scanf("%d",&b[i]); //读入
a[i]=i; //顺便初始化一下a数组
}
sort(a+1,a+n+1,cmp1); //给a数组排序,达到最终的效果
for(register int i=1;i<=n;i++)
{
Add(a[i]); //依次加入树状数组
ans+=Sum(a[i]-1); //计算结果并累计
}
printf("%d",ans); //输出ans
return 0; //返回
}
下面是hack数据
40000
482643682 59004772 875307309 952412416 362692757 585392042 323770898 526191528 934996244 456567909 357933487 880840759 24615672 739619246 493316742 567201686 547140933 433510849 600329337 938175891 883893378 305294082 428921048 187590239 634755880 228098303 779383408 598135725 499093851 232651917 762819760 985644184 476486305 14432297 830404974 180157948 556320474 129762547 349692658 554295877 653382818 515142613 202168057 358275761 136789846 545147289 767561432 4264252 58824952 930236540 518791106 936038052 998192881 258263593 66327010 770381259 890638589 626792008 918469224 970258623 394279802 132011121 43603809 76090869 658363572 237768670 127591923 939176306 684588745 278244608 15139981 8839163 549721759 131019177 535680351 275400431 300976839 447402721 871552119 865679913 879422437 988828437 620312372 891879592 636598651 862325475 233560294 76173936 654045066 192687726 315420324 886510697 545212410 442686477 177242366 72770112 557229668 151694364 347123176 783411490 8179913 812885299 914592984 538134204 47421085 363666602 914186856 991428849 988061624 177917019 127988234 400704164 511863136 195370203 631767940 41051663 466361947 976065170 594673227 479828015 449686706 341105356 782040260 141870620 72715695 572273436 379668050 925575147 956682461 547138829 767620758 80813800 332943243 310312358 260743195 135453652 434086759 399409905 45910733 665754664 747713614 946630891 536281450 800400179 935135842 264943736 355014187 982498975 609886633 540189093 118982899 908505195 6819819 708185516 972970728 206246802 771307923 120052109 964376291 578073803 97586502 331567858 562069226 853425732 942259199 928373483 723695340 109980962 533710257 248627514 14311444 497497499 547328064 348955794 913686899 4190282 939763741 623576118 950389349 801929016 619256014 447616942 501175647 129980214 452226430 234467325 385688420 513475485 385261096 776814813 739220985 969919891 707238920 128452214 271657217 943712860 166829231 640909495 347893763 469849786 390444386 11498025 364130045 303338325 789871726 449850552 674650001 940492402 316132571 141599594 381197912 246122605 972672229 239755514 787295751 222809969 390340070 489473302 505114150 452390409 715238181 436632173 251821669 943045387 862727144 871247242 497720389 174475798 842653507 471977076 197953520 915842578 192366141 772963489 817995316 952723481 422736182 62241949 154018278 257087490 678745180 124019124 374905368 113298844 667522620 668562144 708397667 965701782 683973285 21219584 425138562 893777475 733947376 799141192 121727333 309238400 982765098 821585500 557256490 285609271 133764537 175162804 383518853 915814274 425879350 881832503 593000632 728701388 592340594 653780803 961960529 180740719 257341631 877520736 22075146 678818009 577561301 40747075 565721938 39256282 190172981 688220101 586230822 755043167 592720562 532004289 143237261 956240043 511175323 737084738 812828227 804270681 111812118 954232806 962359208 86567423 690636505 607261113 89987876 405796596 179621087 767286872 632902611 73148482 889262617 206925827 969040241 413804515 238519084 261205794 276873789 347846175 384923468 321988070 450094565 742744156 146862479 416390000 653318586 237108576 615288819 85514646 436630699 894428494 235660253 23555858 273381759 29619949 149273100 803336756 336558255 418400064 713843470 778933284 167070234 720646587 229449057 923579953 394165449 579814889 337053515 690475113 87300513 597931030 67898140 448675710 263891428 855832269 45359150 947100720 497716443 745613121 397837656 661597751 958406934 80441908 360180483 826821480 648907580 325984281 52105692 453476696 771536102 753381454 252303133 772753127 852787242 93982431 470907313 944967569 32056925 439599012 578349379 281003140 616634924 130509146 228594804 570988952 690753190 241055697 696754385 264417557 244995804 491425944 417364981 157366297 726090541 159204174 967070226 364572020 925303098 688784915 16572858 401823145 25499138 577917943 24560920 839658486 719676996 163234787 981155384 350678443 973103395 143465204 874215551 365070407 773080325 429321266 459522644 267040876 913320357 820085172 786468830 110269691 338128353 925596952 974093754 696489126 873895990 766364871 367571980 720227465 175892320 663208649 150218127 405989169 625147357 813923066 628361847 722318800 762387572 345481472 780477226 275494368 642784098 411842187 148804858 4445952 502977889 803676511 642156149 235856715 183543353 321406439 133026219 53792602 620165896 747389586 397574127 600779348 298864323 293246941 851938787 767412077 517758701 725014823 855841288 858872454 129612616 139997691 448596277 797944978 87464171 134915825 36784937 116366415 838314631 381529979 130483913 553159651 156965372 885253064 187940197 416860733 366977918 595975983 985336999 705674080 412927516 219358326 932399487 796207637 564893470 884957255 981287790 278120648 398363465 309924138 592622519 611036032 179643242 843591711 936663761 325196590 746542979 753005263 467333862 732618041 236101653 3427718 899655150 243617659 791700182 607978891 897579753 344802397 625031261 353336646 956537347 20767741 527534462 857540495 658672487 272194489 448409975 452365858 85240205 549500324 8289087 981434646 320352065 119240796 202177429 742884652 79836906 629580932 603063252 925117200 351213989 683252676 527196947 182760445 480748040 228030282 44569981 367167678 949296303 496462478 147132937 72319967 550406732 930247947 942682852 520810060 2579072 327002576 181493380 544942077 506964282 656936829 240317629 635381058 742701286 751050575 459482317 728436079 649101165 740604017 211104964 519958173 121608320 587895060 412018155 920596217 292179678 410995477 200071235 508688475 814605552 623245393 339962820 574114182 887555831 856575863 286994706 552174953 589248192 882254649 395453880 99443239 142886490 436981102 773371962 422488085 920549243 781898501 332619046 232134830 158779769 639520821 124557726 856562099 446054407 414818758 571455351 684790848 639359217 150650111 873805559 516285816 152368679 195230498 642346132 36888599 775731919 699105879 302594658 836579372 568273981 461798166 678542638 955805586 641869714 517609279 389147270 574098843 719256417 903920715 737367407 747858723 585886055 952475696 435292653 726730243 280860136 37772617 422795913 87976345 248170423 577272318 742061600 195887162 504077062 144151418 903901592 224575627 592829092 16307563 868855601 694069583 546689591 62767611 981949213 723154039 134619594 985168634 161883531 100865178 281116940 299351421 517801551 621422121 356847100 835799642 500015253 172568178 544838652 963943988 180307138 759995159 509602814 795544984 519257387 260475510 692011537 953551795 829875454 931484556 207219719 67341135 375817629 92610247 743899565 47977930 179601694 470890635 307162186 379771258 54924109 111230570 801973999 562489296 336152342 890528212 67389592 443972487 282879678 921274573 281343961 842588732 277822926 543425494 946232627 548299736 562627559 980545993 422108994 140629047 673893247 24418198 866072567 165903039 838002843 760881690 523811980 844141565 505672844 814812980 232711570 574568117 152421450 521984065 415666995 991269919 889231561 759381683 217412680 115677443 346439864 738197647 427683098 849691312 179001183 151818657 697958682 768066172 554401219 691331934 931701992 383231255 800013182 672101182 914848377 668661877 509950861 735530820 802429725 244391460 152938853 420636333 189839804 55019992 202702321 613649082 556130002 230698920 576643440 499405394 985903908 298477327 518571416 821389499 722546807 135205442 715739750 969833320 998538843 63132997 982141477 143617209 179002527 565304440 797695737 9781229 127655509 370170184 422963623 921387755 223670396 526217383 799944280 390724791 793477212 992037643 442176039 286573143 78750380 227277010 466389101 564972622 131690344 153888799 944282233 570384943 48313125 226260030 793294621 911940457 523199809 781730519 149028201 641203313 713372415 44781017 421045733 547921178 150343051 629183580 10174014 315244958 61557660 320027882 182525386 448525951 522159185 972427680 31600341 308476632 847477666 827045110 453878379 168546950 258570606 167454980 207396588 689202386 466467539 922184670 601962246 944229811 571496864 533540005 346375826 672149860 538184142 621235737 960083096 181756835 40776817 554707222 776964248 179644562 451563399 140778890 41048670 912087240 944455648 419853455 317674608 522110025 533769158 79439741 172345901 307406121 402864419 465730782 577023214 998984835 832908981 495977940 141543691 225308754 761898687 403204283 511573706 393475372 596123096 703591398 240212408 365162110 325087369 831721203 26873469 766935841 410820357 943494515 794236362 305483615 480155551 342754381 358199669 497333629 111415480 699599686 560810416 37472969 697022543 157282120 542643794 964745883 755674880 263270053 535717355 966197020 924803935 179058550 812230571 796519392 442746227 366502521 240884979 127900175 454046923 895726626 739290627 621145092 49917859 538746518 195466909 116371899 997773674 671791937 833187474 119099934 559634650 471807338 290915205 950891743 913062696 929064946 942078020 805031239 310338648 597439621 315508602 413966193 288879587 102725861 869407366 695812277 479688293 965297538 712050340 761199382 137350435 830478389 622135294 27628857 849747066 392766386 314757110 177662361 321984754 867358795 68362617 672986908 78379747 3619034 905861978 745557451 389239242 525890413 349117981 785138110 113789560 907005214 154831490 524936259 367401057 349316188 453243231 37121352 476209486 493304701 678830109 566687609 191210581 15738117 17652681 23032313 453444544 479423065 43400739 232125719 523044571 380430796 124670444 219852826 846381946 345309799 243620985 614091565 506078903 142000692 745510355 190962000 727966101 34155856 930251977 542133147 972743556 37166814 513052005 305459010 592361559 781556693 12531932 173693944 49801199 213690292 799696542 351153417 305795061 685381538 19373211 542770896 767259598 85945771 706852437 244226137 561714332 463218264 716675480 295945504 773909504 433352072 796757482 552376539 386138938 294919586 460320191 736931448 333406279 112989489 174082148 835248198 525068217 676522410 806891233 757906262 358601584 822931351 932219596 647718346 607349812 230086462 524466886 5493666 783199963 512016811 713448940 461142875 268729446 587938184 12026064 719692833 166039345 724093334 854742020 850323323 712146939 923967087 195920989 242455180 383292683 613008223 911946144 341071177 179811062 848793047 163207950 796846320 949675923 576586753 515132908 340827277 258183924 541996054 20493742 591478903 815786629 27388035 502827487 961887029 754193604 914024386 366880925 163217498 828755051 83047980 159105306 788488576 895488838 609487350 792204319 277749146 310354699 11633996 225086859 661352091 707666775 576032836 787913376 927273377 733311289 354716560 796131122 482624243 181724944 183373555 819904042 813700255 317795943 186976758 81964849 630950604 887993388 848185844 387192938 233574445 251517693 746613933 466365593 541983637 97085734 419106108 671942438 772314715 18500475 32052454 309220559 647686883 143489806 485406329 555033698 963929413 64651209 52309347 1511511 874593529 556494303 215890057 2737487 611964305 23872384 764799035 271476379 996100428 492652718 733103372 714616013 177893303 217485608 66473216 348871496 684160041 608289536 48926710 700891156 849951191 313259267 468767504 115842303 148214679 916448828 4822312 57073790 982390390 294671417 405963134 570380073 159012160 858782675 624749649 944967488 463663627 884420082 477384725 965531676 9637647 692137457 738452487 600124903 584649749 596985892 332673618 426800673 176998791 560220027 971282321 492085004 516363764 514820747 221347863 215801042 374103331 23694500 707725241 824188062 294835651 160604774 699317755 507153930 357764749 439301002 949950348 182430822 139758546 813468864 440183876 580164419 240571825 527901186 953234257 29536030 144378777 53853901 993364221 36247792 63104799 186141270 475454975 188710967 141412182 386939101 457629316 543044838 19953198 934078761 388439515 700878320 723581069 395554355 726588028 695754076 638978925 387456433 397279628 511889123 10877399 47015126 736593034 760872867 873077031 177654040 54364684 203749445 31110004 520407178 789691773 802344317 307934710 885727788 684198385 790646058 817190345 58211247 646137650 741188810 875564295 986323311 620032003 148615927 184902600 690039419 727728489 746849266 499811816 893998033 883118121 292359534 691622292 663224736 931513058 845897767 352487856 293239644 608219537 52856860 508729889 189770627 546468924 811344618 854747028 148279022 680055819 754371078 637888116 145005415 973490099 140413168 510055465 25842284 453492288 749035943 431607324 937968690 480352458 634124737 900837100 147511025 709402218 35625944 543653007 562420487 182549888 446851737 195132570 121839646 153607321 442616200 683918684 569266215 447790749 84910513 930064420 904631533 239872379 569991640 561898304 64090000 539091503 29951947 831808345 161162689 286254229 52768283 568666279 159193140 559637016 756478464 85553178 236535645 77448100 425450299 459822090 959516714 11865354 959551523 495825355 627182719 857552683 975768346 396391318 239972975 49228706 967145658 133773340 753486456 402000231 803394177 650277726 978249005 781331772 81219703 257289266 741625099 123661422 396119247 223058673 337815232 366924461 240143927 836769209 977264849 561629389 778200314 786682259 219766598 958045367 203988363 741437865 862030658 725045617 189426135 934644122 294487225 321325520 236786918 187768084 24517890 533413905 195770665 158166908 770599252 577204786 643636308 690750792 189417633 962325185 325814524 419873404 201489592 768963340 364752146 889903233 416450949 382827577 58418015 99576634 369467927 226040306 814556430 555608795 779757713 739715019 260403902 948405844 952802497 943030221 942245530 37980389 319830471 588283264 389015132 642553813 861194141 544583546 452887000 468991058 202313774 255483610 599191185 329653181 16466280 996731263 855192471 1561063 432526561 480970169 834686859 63360742 571384157 97693225 32679812 990448358 343865693 865219723 407728338 279080210 251988472 243886743 792702757 62539545 126524453 937834741 399117579 834831111 696825749 959904499 672879995 919600944 24644943 40417148 541021441 549933820 10779147 310258204 745899186 760674612 80347632 838257012 63962388 520955110 390657101 126641202 923090320 329545802 152514434 431595331 716503065 997865879 163732906 303852093 926837806 68565662 260501799 525327100 445336184 934660399 834716195 121841209 69994493 769539211 221257267 720239097 382819117 673762808 895645804 814189495 144669559 61685607 282774545 131085644 797241940 992282319 963850249 111982431 44309460 328966357 815217818 744462381 491620822 821034793 410613383 775752321 757470612 920079484 661772571 975918436 30186906 564226776 227465201 720763969 146738634 985248127 210743950 775632130 598747280 823575304 244725614 923749028 120555787 850874583 915859024 212279167 6683452 942103570 324366685 332684974 673994487 115918793 304906582 682387864 854579649 191276566 739476082 134580872 445834566 458603494 156197855 318143792 394227242 841348536 950358038 706300842 266019325 420035401 60479600 322160312 400698100 703963575 480820380 583789092 86161975 890558933 116642828 123722503 876850702 155453049 401749745 74094133 11361916 393497190 181233382 971931326 873769420 4243663 658709481 217390089 2176876 568276730 17090698 188589238 262530116 655090141 488804085 427139348 86275007 598406018 199783201 254889015 509496906 947350267 136782882 671299144 971726177 729716335 488661567 317146273 516978067 824631592 304150604 657558873 798857 896774848 944860407 561035308 789935037 997917846 782386671 227111098 556142042 299090455 354933895 33713596 929947672 827162849 82926561 943708057 544925260 222350995 868082530 993632243 568936201 839886927 234249454 136564796 912170923 825442277 449931929 640746444 129758366 17792284 930995828 998839872 739895473 249196365 963771169 550828977 658532969 18628693 175750705 424318604 170093588 118812390 401205625 596671774 205439385 397878266 540455017 912548312 17523184 264770771 361698727 912895198 888811323 418232321 615805459 885267562 962990054 824204848 591618910 439215661 980443104 7455603 499330288 120422598 871480251 122618945 736690615 293798718 267567682 833296990 567248305 810914795 507399426 618665623 726236028 585971393 446722182 618877135 991151048 424279415 959004587 497711817 11519979 311530445 912805839 781864044 922551827 499814010 825351228 805585403 421953539 56349980 213470191 93286056 315399173 953372582 827152231 182013990 414126780 892148571 404116627 231908324 145084267 887989565 205683524 406084279 225031036 767212448 752313255 995359764 500256971 108634981 254139675 352620660 219755252 170672419 679246117 928882158 694990068 1895295 768322396 18108198 864773260 577830411 898189031 639284692 83241239 208646700 888366660 95615651 897499752 624564553 32077560 382633652 535419525 141831726 340265309 78368271 741900085 124641246 297513491 411353231 482499519 987412521 95191828 336440677 277525465 438706901 256378190 322175052 998437963 698253418 27069249 752354416 245142418 487115649 231104691 429879520 176048853 765311252 502674961 725401803 986896729 148091440 670511550 288370999 191090358 407595985 100643785 351729907 443727376 609115307 282908875 35948836 912654583 903173117 317908523 830745387 203454781 789373779 520284956 937261771 233808917 550696020 638819431 406600933 125759922 472241021 539814734 346694876 67076826 715267950 585360324 686923167 711670257 812657555 314212181 783450874 462328768 208570819 118082132 281854873 804587632 619999149 687966621 74846647 654615480 926481016 543491948 560712506 488862677 518336983 301233664 208203211 602926265 362015137 188874986 981042072 30256469 997528905 751828195 909112006 715117894 967796775 575418881 591337981 919507150 628340618 684696516 309578245 973619060 505307246 487272667 917610282 39651409 520149655 180735292 838199604 290109054 461557413 446732104 349878509 220109776 933083239 646003879 722544815 369058290 713133085 283171654 545675711 446396465 245440283 434753734 435713233 241609653 452257482 493699496 746475518 950050631 808588473 950467585 858635326 707328158 541877804 868985933 669054613 375574670 416389914 79944783 298600275 160047705 809707553 887054182 587883502 10783014 242215507 156788195 850861693 477148340 452564300 341922217 186857042 778063919 191825400 162977509 450989277 73512208 408020881 878304313 15770257 528992555 724744960 70860439 956234743 559939851 169375544 471591193 613013267 955664290 48387812 130933107 85000967 370021539 577472914 745384940 838232671 216848969 376865320 43897670 838133844 221701555 866890205 836760714 568954401 10981988 961582436 922825788 233049172 608969533 833711222 876027917 778850045 241278515 645224539 532996062 413991349 567396244 501181573 177372600 364413007 383676305 616557562 676835105 576111797 283402627 791918443 51764724 229478226 460595892 471594558 125952831 911893965 297542136 817514487 933764713 813109221 420383455 858300700 152028158 917765266 476256878 862966126 941825320 214091302 225023277 382859530 223306688 390611638 295401153 887210085 774712222 768381885 12682178 758946782 690391373 272688412 442509692 245813690 358620096 848583201 968243741 286338118 344929742 156073293 132128863 716683127 480545144 386675609 165631447 709581766 592628545 202584220 369523722 320177132 929265316 745400693 905568356 723496541 565896953 999809802 839288051 908270798 3610109 950785743 396183219 470052936 638525630 843151811 337297349 773767654 742190577 895242462 940937372 923551492 184863330 219720036 392576807 563776384 778394584 672125561 977660915 337127454 4045548 484871807 249049846 581893544 746552358 346301316 667197308 969518959 957835172 36302573 144074974 54627973 911817926 826206558 94015408 1391012 850675727 314146104 518871266 58167786 248994235 433170125 362140043 909161192 506054277 34080310 657836804 507494480 927179853 226848661 445300642 243272199 659316379 926107241 411747571 401772419 9886168 210506825 220459128 422257265 501386575 556106276 967772311 665229764 912810964 79523843 258324782 555179581 929369098 947724052 247351187 540946791 576003581 407158680 11942355 936011723 360065323 945363195 466584445 522579918 173274963 266551451 445923958 49856796 924017237 126351806 249958781 87419425 999481688 717296563 244933057 197444757 403738968 595300450 56025067 256238981 487147938 455580658 923974273 285224894 421272135 304391966 821153327 494282052 38401628 51854988 177081052 524523541 752735602 503878333 391568703 214435544 359111167 237109526 285262690 782793666 667885165 933087728 709904274 580914337 255369030 436208334 349334051 226121729 399323271 650748468 223776952 437297260 938563186 121210817 895819300 239020586 30270272 859690530 812028973 242375285 306754537 971428471 657372151 989028659 615580245 116083292 485116154 248815216 611052958 417850053 385432757 881331421 963246126 924601785 744971644 31607277 979776543 737216389 368396439 257088381 513915777 301043144 983847258 483444198 268038699 758275536 979562161 762868036 45504695 36737240 911772611 120120329 731829526 409886835 216348143 463092571 922199633 525658939 770180847 50957324 876181667 846979561 263183117 48737076 123286095 482339701 197732899 399365816 575502996 402145936 579814187 946366 337702880 464469460 949146507 372499419 735097960 845725096 456736931 199029159 612954077 93939349 743383165 476022034 132805190 250799741 198236377 992264212 120835448 296538768 657540842 910679760 931924316 541039148 628174845 568591573 155585998 647507032 683793557 936586783 259494192 327794565 190730944 340944766 970992747 70566446 690156588 794474352 888631758 992514629 340805376 327535172 145114976 388226743 781546744 488508684 571184536 605674776 678766023 482011471 867482194 607380593 495917019 558325852 268230906 591755930 341640859 579890569 786770230 287721968 722199002 314894214 637457428 700639472 786392721 362595950 755778258 277283599 373877740 699274989 691396488 425591091 949216303 940836528 808449743 324568652 953471598 857180872 378220333 291318742 83160407 785578683 937083558 592170437 812071513 849664080 383953689 327978480 204960901 49806906 727119134 624701812 981200978 566960348 756924794 239408273 601490659 270029741 655197650 924674052 493037452 113865882 560145267 848294725 297802680 543187216 699105271 583691552 618841139 404879555 958693793 668252683 143161543 23690813 315788091 309674895 388653111 208350318 248515720 436509191 313409822 125892317 684932557 634716412 787765503 30344413 148174209 278681727 502596467 731970979 85371139 831561839 835498924 432308178 265823196 525041172 832963891 963138819 969799087 89703333 893398568 546421530 487724481 531365555 372225248 426676008 616258614 317195323 590134225 842356587 932549242 964819858 843651858 521991262 11294209 708298137 342516534 796518800 394188933 343002737 432570454 461909213 394180054 965715915 128339571 40134615 854391586 353571774 883424606 599576959 764562492 770786953 632439216 786619889 102414624 612840541 106967391 497957234 825996401 584639421 987417142 245602840 848390245 705509888 957742507 664945596 675809655 864977360 591038137 484010907 708892564 837073414 4310528 676615276 760191152 501148594 78376520 74278356 313813519 124138075 128755766 832072129 707918501 888137757 311975519 404607009 80723923 413475495 908273581 622465946 203269956 861039910 693396891 378085512 310449663 28056731 309073435 743051116 159887871 427227931 125018814 612474658 621493743 21574587 391303398 465160921 501408643 697679912 551997696 366568417 562740565 946912129 263109823 198668698 573542916 755434188 802560393 729320922 717254443 705589518 140824192 770824448 471418806 219847874 19786741 704922489 301069747 906103548 181825781 243234471 475453098 358989530 228154808 453337089 141970488 156879198 684388036 410778144 793875909 877305111 86613934 473127347 999500438 431083868 82994831 838581546 430219883 869624316 741578970 471507767 506847795 195750282 210972264 371744230 820322887 659644612 34711142 983396144 466096792 717118154 755180422 594058808 976146420 342419729 155419441 906806627 908921242 529022908 724077941 631626240 550032153 322259335 757974306 488260934 496839238 6385553 732946909 249198113 744277951 442201705 322080979 50080862 241287494 418830139 919082996 154745423 3293673 209303434 162430545 66335824 896833818 955152245 724705867 44642649 871484534 275033559 628674452 154922697 31042763 539670652 267919251 753909511 93019048 723976623 315331943 66392926 364588224 131926585 299254103 571192106 328717607 24899387 671317522 865793836 464495480 619032939 879192282 938633435 890767561 598128077 434155075 795907803 225340364 681603422 537996770 300182739 494378311 848761320 882213010 657083151 835008855 2043014 446355625 721170609 630065587 867481913 805009879 446281437 823032653 723951673 13952859 230998402 633495970 362694698 726652825 760338768 513033758 523548684 880477490 306170924 798868767 408448214 341151534 788515268 882779826 282024894 360365 77240957 951474669 477907746 987829025 399005044 459483901 802137192 753876124 74686538 383922309 397735641 434961419 662786727 960442589 407938979 907982851 962988413 131258605 248642028 268298167 906381233 186788293 59706543 87187895 408970598 178239434 605225664 668877546 179261165 30694136 508966651 350979858 587680006 903652607 121936969 548028389 797449397 801907682 970844092 763492325 400368368 982789844 764123937 150210194 673549416 382765616 447828018 109001132 227154614 966519668 923706052 701478436 88199516 790872248 188825825 36399841 537977218 652332389 159440793 431883627 741562130 165501839 785787961 658376999 999971494 381372449 809863687 980133596 451838891 110328490 960115928 573716860 277849250 968652782 135260683 793713742 614236117 769767235 749702622 613804591 804476357 592943508 399200745 614173655 551193045 19682291 191603966 651873425 27551079 350804499 81201038 580791067 719845553 195703317 488350004 668445681 715840318 898420369 929112834 87677400 283962557 75612246 103444089 332049205 42573105 864656187 782956634 446427234 610410429 488659189 432951144 714872373 595594212 517771470 683878769 926183590 22431137 866686708 641925189 968873382 209996032 420645078 325132659 26238261 480898042 369625443 79637313 997740986 757961684 269563941 275145877 991013404 103244970 297975014 677711311 143130774 411312238 498268472 150574850 299445920 627722990 395976612 791837333 265482396 860029673 397167481 62663118 795035230 333840596 63784692 885292261 60413939 198167438 856841726 293170142 163948424 649753194 593439813 376020161 677265359 532071696 403407963 790390264 566812179 392602506 770244633 237539649 989668226 393265945 273362194 432147743 620523564 560896378 952234861 967273145 94069437 780298914 28582603 72077999 761714402 78094215 379374436 702877943 714369745 580810649 30172921 85502915 391983103 365612875 852979874 750609311 140011447 112037132 7283814 561132488 337623312 293233722 726761644 417078887 400775388 615864007 605783277 359090451 721291291 830253936 66980876 893793004 656502063 366846685 408969040 342734906 353520336 928521886 160892175 492617797 523901337 530486947 531324610 398088383 400968331 861192341 976398535 139528728 769969890 923807809 188701304 305985833 100526169 297375825 344230595 412504471 233756251 428551820 91860281 161798979 778348435 123054750 469602430 900507638 337440306 47794729 704541231 583149764 749453349 263186214 977772016 19244437 447994644 320185131 514749817 230749129 836387766 691029553 509914118 332713870 26494277 62627043 642557701 298826577 626459184 545282737 629006764 76902516 921760587 77523099 939467157 604728530 233745055 935952473 556064821 171422696 25009883 333907278 753682882 27952185 332950445 534729505 120186825 437500896 110684611 366283014 616410908 230728308 425524053 331592504 932611056 744941723 798331251 930738743 703778006 303825380 77460375 783903476 29138997 276814887 283359085 759044340 589099924 497878410 510376392 591872139 506139594 785739637 753860438 226597558 262119113 808192091 918197430 930247269 367093077 476806528 352441181 209533298 845290335 94119485 346085173 135209218 497615648 231915542 567128004 24578610 482772784 296642091 7131376 882582056 762039886 533703898 346791284 435093395 951351962 872986746 643112060 138408507 143621198 616350839 747545528 894329879 625148951 878703079 186217661 519346471 853256399 945525795 623968797 910416685 784100583 793773065 839794574 810076627 350324714 554093577 262238360 943045253 535663231 97413206 896914519 987523601 786089157 393386355 693627225 251675772 519945811 881368451 227544025 871080731 221293059 660389471 713727882 918225136 461809666 800589964 42559343 733127625 352162745 665030448 808964851 594670465 57416690 812991246 321248569 661948802 407866811 182114946 625405282 133628112 346064926 170066584 710859159 817914407 383718012 461468502 100477216 859309748 809604773 796351916 118054604 62042771 506971621 497791587 801613380 679547172 518559133 913796154 584522707 512870176 410137516 508046653 477592765 391442491 978334929 269551234 614951095 831692344 438747768 49110757 243430593 502423464 700470942 651338928 300211412 654866059 388906864 913006233 330398160 718831328 372889533 271058774 940143121 749670637 786422786 873390486 426671276 149305737 701110101 855505407 154052055 708538631 899961956 331537966 687600644 139619931 912178447 957632131 273316438 941426997 497921811 247556206 912672356 202520306 329525502 81398362 689217648 752905970 976904531 425623951 25568381 821026195 440483459 664694564 436078228 806235758 256906183 853014582 213906211 350856078 163197940 665592672 194997005 147195232 131668993 308640642 427513197 167753245 510695954 903438813 623818233 216475953 156760257 642858008 199155852 698727917 635659727 30094643 169384177 378599274 629385539 201477010 912682335 460701086 129426712 950844267 27350899 127059238 318862584 154061245 802592693 210690004 253914303 737661110 884426497 223518072 532153305 957966341 807564184 50145112 507812933 917619434 124622214 80342769 351378013 18958826 643123901 655820119 57442457 778002976 632173851 263982793 362387547 171204585 193595607 624784724 774994349 726326043 150663352 537694808 877034337 940536364 790902273 582388734 21162214 345504545 235003349 265930881 369648092 800539133 77727498 416558322 932411769 135026073 768838920 597536886 505432158 562990703 613489417 806752189 981914772 195322493 134848390 99987147 662513826 918845961 426453380 881784731 238473242 484427644 416029241 753224596 795287046 722601538 76135320 289425969 246681331 118228410 529078620 897441815 672111596 738264899 387088560 318634995 491631122 900417813 126492032 471191269 306896260 503643757 351472316 46325146 740017991 619283319 472406238 652274775 582904578 296072549 214759319 912060051 956273590 799234840 524148032 795378738 239178742 943890921 957569112 305293971 918387910 966715120 737230240 456133451 3905066 944019375 414302091 408002625 882082815 175406906 172981449 873756758 881087228 13532518 234348633 119342566 619809325 265712258 778349148 434698439 251196700 700122484 643294710 756429827 630139665 862841260 150113832 981719266 701376594 781847955 529753265 217983347 579003892 621451168 645575673 114348263 180595863 367110714 129281283 3081458 388617279 831145381 265621734 749627429 334108001 636049068 592688790 797871863 367509948 733305800 871249962 992232664 314168715 777943372 447330486 290773426 705094621 515485678 933780359 562361918 375368988 631462531 457838671 314197807 504332077 432635816 249400705 295250433 272261848 328467938 348757859 193851442 460177083 707049326 489802634 43903051 868132651 12867196 324301224 956861060 477338270 175341223 923789887 311184735 33201354 896196877 67045629 147099467 702613682 430711697 733010908 334266417 451161213 52666536 567885395 900989218 845188601 315174134 17018148 440209862 287186400 34000320 728623443 346332773 240378318 397881761 162795621 360347106 879489157 284585223 222944463 733182078 408273409 199246668 177769547 498383895 843863695 159244764 332096254 963256167 373640989 771716075 637980849 914323615 966111575 770786286 490059446 407835555 882134880 245225532 891240829 372791030 615434429 796990695 192116467 800272874 357989669 874835227 496947615 276362141 939847788 14576209 51024690 10210095 191892787 27990962 452203584 701184343 328604716 830959160 15189174 641809224 400289244 792414329 536872590 761397627 273976496 835570632 268476588 868071623 725069775 882151814 316073574 754521619 445026502 733732247 970954562 956903215 155276160 669196701 627593060 240597410 350267439 268543580 634856400 538656783 181447189 374726860 701021371 494418036 820708627 73482937 136412079 717476750 791697619 16840166 483219777 871028438 722206393 581482290 971164216 325661848 621713041 796771191 482506984 597735595 64351064 791587159 976174404 897511 902055330 981044726 935161721 302893960 628985066 998649394 751892917 490673643 284545132 958330709 486666656 217268191 170606290 269481466 356053340 250781287 89458489 959187857 121088411 166156996 492794637 892629507 540059257 457372369 182834046 890849106 436651306 946977396 543737970 714709082 170838895 77251361 868990356 642362210 993966921 367574115 49331577 234040157 306832668 406526727 391756448 40852673 759228893 879573534 11897299 709915757 384026484 764879248 485290548 519903821 295127459 896800852 976062226 173056796 653315972 58966317 999405674 348038747 176684927 464306365 968095373 312148911 605838606 762623479 344722869 487280036 77319445 401247010 253292973 415648539 153268854 559918364 335303392 717162920 233638393 189527800 444999807 44137223 832361952 800495937 639933606 154054670 198545010 502328352 649451206 883491846 22149089 798906418 981380461 508462976 462674110 52173622 788201992 422439386 230098356 561734678 788107119 410876540 554557586 254700854 173831185 80443682 148542368 647232619 192370301 757125389 80570825 334286421 801129832 325362361 484988193 41877399 409435809 914077483 56923414 370078936 903155069 59316887 466594265 222771847 73528680 187134380 430963987 981614302 959260949 690732671 444169206 546235991 299214703 580033266 549695879 326454794 9855674 807592816 49563726 310164422 144823947 289087402 742463048 237260060 539156242 502163464 995615292 779783988 623374492 901751776 422855886 694523734 259317513 715574118 607828570 345411922 914360290 376890994 116886777 369973497 354584661 398698982 893356055 781947497 786095379 562688397 201121933 292762287 181489936 758321809 521829139 617784112 340707675 306768022 735039693 953755758 893233086 100564645 452582202 74882458 92873384 135864497 406632712 228172925 24396400 547197432 448655501 223145038 115167489 696886758 428440368 190325768 310099460 458281957 654454971 990213136 24074302 236811815 944781324 765921066 157926773 88299390 146906845 553491219 981353193 821627535 566067520 551660538 70835617 518931223 461498969 871046924 314143157 504259597 472524939 177172378 111460946 337169811 308109924 749799391 291673003 303753217 734197460 313809113 185429334 542078912 760741023 255311254 196500932 483540434 656229999 553478239 455072744 34667283 510015668 220095703 546230111 819713229 226944107 387750002 680177197 58758354 324004835 354521926 698105727 466113191 240913446 390168388 477750655 597827020 839917572 968814897 267401055 576893288 253548270 255557281 636600116 799437707 945754941 906971791 376541254 505727445 906464077 234278644 339813539 896699723 896946435 776775874 739935936 618140536 165244680 479325363 709773583 967393332 760484982 935794502 516005524 327432554 2741684 78728779 587117412 788608708 42592730 192731969 920179360 794240727 710466441 142088081 181483722 978650974 174927270 632604505 505555295 102340457 795371013 787982446 991022001 704372855 300732508 991483760 852923862 439801567 458019232 602600084 670063599 430912771 188069060 932187827 719343338 123955121 635311692 493548984 935837275 28011632 8279610 979294020 293519466 73221625 951619257 663949626 26025542 491656525 157060799 764831915 480689011 199274838 427775501 475689451 337728453 60718828 879853821 489063444 908410505 619382496 935493102 850774706 448338027 118564593 969668981 103457126 656984299 758938659 955639957 891786429 620373386 312189292 730843264 850780595 470288269 367935351 351122080 496671353 95376627 378407261 229553872 973116893 297088023 312702377 732619248 372880239 213869940 851647761 219866460 883524620 29007272 510945958 116430158 515729416 670139774 608251800 734912221 859518085 796844745 518507352 708873806 52682630 312869804 658633549 337734714 646159399 929517980 544553837 946814919 872730066 69763268 747054036 136501883 222106674 916937471 839304837 630330016 171710197 160141705 812937597 63816080 632808887 84586978 182348871 920842293 827997518 5600131 499208980 101367575 85046938 471121388 206201430 218261422 716707936 768557408 727136989 253357346 491566737 342766156 223552083 171895087 238914610 323527807 164429344 403577690 469417476 98123444 635452457 727572289 629038688 492823156 326506648 923147000 824148151 198402111 19411944 194469437 747990362 295092279 992831988 901782306 198184281 308401688 775525915 463111139 780537356 526719765 313436335 290821264 622418464 201405246 723549135 584979540 332206674 758284614 324125011 826684429 478521699 863775920 566018269 983661261 786242466 874017410 261829813 401910505 949740697 883786601 985080579 962884643 879924320 310680199 943935102 902403783 633746445 232757803 944854468 567651355 65928745 687122220 841804509 723568559 893317619 602588392 379921354 409677798 435585692 249213122 716524295 971675485 311529110 953088148 16248387 351630182 66558269 328009683 912168521 385767833 874767110 26270165 613188215 517963904 95291983 140317525 655533925 683683031 970695883 676183028 546086376 277778725 167603999 997918949 650660971 751306290 98404486 928896593 982137115 780104388 105522313 430438185 698442201 750337527 436283583 810950245 137980803 382138449 340064593 727120180 947470818 888813482 250344389 914165540 74264957 150260002 859234673 541946154 800739294 440998697 244999686 308151660 85030842 76712414 661590486 784347679 539224015 777481419 816140885 96779064 6793149 982664301 779563435 868926247 374431560 977472710 174554384 547737388 477016062 130617108 69094150 937270627 449503246 503897737 321522548 66898215 553062695 596580526 485481523 293851258 832870679 373364001 399517652 803532791 566716273 654593814 796283989 199420685 916062700 618628019 208849310 419837478 999375177 719805369 411454419 287712200 247355559 165289016 750664106 255687945 848105920 795009371 505813217 574578239 993937901 739059031 407713678 220406037 954774028 850987097 823231001 140682756 38242003 365023324 411242634 553055416 522465917 748654285 387409206 461056408 542781362 668891840 678814000 486251157 599119068 948572963 19834076 827251854 105737676 483541537 523789921 734597179 734798584 95044695 451925403 781143286 978114854 734701227 593499531 299651840 295372985 385055283 336672593 709276249 55305005 557361695 992240438 413375903 27298460 423675401 763703162 676133788 185473687 653095649 6193016 741135628 856975151 384240637 677848458 522594382 285920926 893054648 226432511 51950489 982808569 821795805 598190071 301103623 297288952 484455662 53586151 927472461 514643105 46547027 614853739 179354480 779905603 299844172 857081091 546327835 112503656 438774235 670085485 828327634 311431555 102972371 386104101 178982795 466281196 517926003 595156980 656804554 331587619 497334494 470220578 765328626 99456610 148917149 742021228 632082428 532363214 597527685 938013414 760611319 788796424 30101451 266619876 902090937 86570541 78804885 387823278 503525606 330307908 628750200 641456391 658951554 555406732 385901356 822153505 317936207 750524794 979837878 901692234 35908026 250790844 397765463 945971124 783501234 455874289 329965491 490691669 530274764 541715022 506874563 532378233 79735112 221134070 556758980 852622784 898510833 853768491 173586940 215669078 951637545 435087636 281355435 967781269 225443243 522280433 568408951 764397611 434626653 118915201 822631978 914503739 687944737 223888156 362363232 578372481 502572807 579820806 342485006 440282966 591890695 448527986 558073505 286338830 109157696 299015721 413252464 396152419 758543973 17691875 665023728 580329871 768811914 94667432 891813919 963976885 944467707 130333580 120242776 895999637 928072808 15007724 806521051 974899456 270366179 792419389 358867228 922538632 456594303 666618527 681131471 221755429 359475109 174600250 92414536 132549013 45604228 362893421 916078408 893240976 469173603 461000725 256025140 669953131 583435184 922665355 118067544 90647602 994979490 574362023 782572758 108230348 685477696 605979268 126283461 272631578 693282260 434659793 517080159 991088744 232606287 571376738 651805912 704988660 616117565 816149139 117634935 953573870 425113958 462598017 462290286 258829649 447423528 132832137 583798272 71223340 594539340 775596728 233784849 110795351 759893979 191729961 320297659 485102337 787509920 496855870 218993214 914154823 505396678 573273763 405509497 997551397 294117011 250281088 822022834 456098589 940095602 760320070 620105597 126735302 592953579 830620730 870922664 671488133 671625311 43517627 986158142 974688592 508725946 205604307 109302403 75489889 169897111 689923233 442032576 625297617 338690603 550422283 163302532 567202299 372634294 466055314 529890011 210996588 281232975 864687442 399191979 747824095 681608018 493375383 35502561 958402177 829327274 158588380 185672489 203916403 606713205 520106153 889971398 835842287 286709652 994911750 160506291 637359900 924207542 113112479 908743349 734814936 918822234 112948636 862138192 643547722 685256803 637738703 793232782 965079848 269539488 876696911 111155283 790443539 50195124 758394322 19987579 699514426 816900982 96552865 530374198 891162640 87457364 140636778 606591893 698778899 706124038 512317641 936788861 265725892 47595393 145869302 279032302 407213790 778156211 665248190 260784980 516420714 63170291 813409839 253580673 897783469 688715188 456652288 218776475 281712757 588070099 633363437 960696203 505617275 116434150 538080206 525294853 548323855 950107621 683004071 929467406 178144582 697738239 984025613 263806697 28874226 959588537 414665804 795315045 312348064 8894478 608238059 785420363 755131380 286320282 517214396 643555733 401688692 249298611 388119427 256220895 966606473 812640927 501308366 789748399 251367076 92957091 285767718 861192277 223112349 604240931 130328508 202481012 66736572 420157743 976732697 13182121 653128595 872501949 469713991 17266963 887796049 595720262 576665275 901636112 658054435 377898188 822114575 676588450 808052835 280307877 395801869 304697483 274863766 799051552 33345574 685798423 197047002 317654304 994272877 142967831 845034740 452519732 410935280 622522404 396532177 856352352 84058707 720457256 879650664 224960589 73646376 765562736 498628166 254345797 170284553 270759545 629490863 238649157 585820781 135592303 773503020 536137585 636618068 735342710 870391034 121120049 836004270 480815218 18310567 765626501 133331453 925440252 692326683 318475464 742346605 380355221 328427815 967686089 800750160 381158423 936975425 807782828 253222102 729549391 71658838 795503188 165693294 402524231 128439095 72051152 453658539 842898094 66874938 343007880 993899058 853623144 847628002 436321635 863855941 559397814 408361893 543861394 565903781 437901402 786340187 123540911 855543828 451400178 735531389 660835022 754431354 462526128 190561382 774315314 982849059 33366679 469398801 782680812 143852127 727094559 189605031 780891853 796715355 612368940 240412312 369417996 325390842 696503259 519660314 553565898 871576219 15045662 787512309 872533018 162433374 446340217 519689126 429928294 644708358 776097237 758954665 506960732 682533831 851359744 201923616 147928933 537605656 733999554 367126444 304460210 891819851 251398928 288050905 987777395 733185216 322261534 82671060 570611710 257403482 676713327 564162021 996690384 687504811 923108611 141224084 950996284 697273204 795919452 848459475 712663862 338433488 519827211 69275198 300384235 62949886 59623848 218880768 204026430 956007120 196392270 976481428 625123679 273557315 973307712 211033554 566081400 293823601 914720561 988646419 529856563 891997774 406957145 934396614 108917443 855692278 858568663 874305251 373964182 631481907 34163448 882862904 598978116 620383965 99288428 538865291 40043856 35943871 287989129 674042141 503091665 347061460 324747420 244851745 552665572 538301475 941416034 296004238 686124349 934801130 863486057 373462344 809962269 793471954 250122850 664076168 228191772 844247932 403614990 601454455 80436688 126247226 27407157 66266441 373511615 619510333 774824870 996876202 533997542 566157326 604755662 415569928 57437330 203554190 760895745 424500552 493546873 171231360 728715798 796092265 982201597 962817888 250945855 454867225 49332215 408314243 395453380 134223729 810583585 797900580 947648234 97376692 913169876 940082359 866584453 796124615 41946220 940592692 103087700 641324478 179377006 480095226 383954886 11545099 481677264 867669984 603555888 384850895 875994813 387525346 689710787 190820668 5942206 967809137 319752515 571176914 307187897 477960766 88549028 710731135 515971377 194399872 255009227 431078187 220588502 769324409 386631316 670671737 424249896 508403719 66325221 448853216 997883934 638451368 114271592 184425741 608858663 23202239 764791341 109983489 651316065 705556651 154651672 102706628 435765118 661292611 506146314 641633785 898672970 24074383 546381438 562412552 945202181 913615034 762959898 706275483 370775081 418935877 59588125 958735613 240059393 581656098 46813167 144254627 284350415 616478309 489075375 86318603 940923758 237079490 604638333 529767742 421401965 162516951 195405368 508342947 251810697 781610242 50844251 757096549 398968066 249558412 152804566 379092779 22557887 695341862 299011695 425996168 17503041 619819204 436095276 668781131 721196924 701238212 834208639 350618918 593653158 991647914 453640525 781100306 791571276 887002220 124082959 421482123 855624883 643750748 409140010 903820809 260014000 105320399 119818593 59128505 998992258 704756805 213569118 128644709 744441874 329181501 28567134 450562485 214411870 258864908 589011577 25946555 102410391 859567040 697480421 24495828 634910212 173419097 679832311 599790018 749570079 834710148 559527747 221864734 462629470 187591423 892873441 125275979 746170075 10694693 756741458 757686781 296077075 163883176 621057707 654906291 223732872 606118975 559433301 482201547 482887751 832206671 396176115 117018668 312582714 878632679 606942265 771365220 354624826 303377511 75372751 70554092 266909324 569605723 50240609 962435910 558417651 127345529 287036412 425755915 451970468 7737502 772666231 584490015 253090547 474369459 620504393 690587842 574335328 526622360 657363777 576948655 7437762 938082548 588803563 831675777 601141430 795572613 115038842 298647003 455858503 182687132 427170572 520083038 836648937 635255677 13669112 70731839 697093986 226382229 392803122 291829068 801746883 272142254 310451210 644949576 279909077 775165124 487170921 298278642 661533850 139999997 963750784 497792794 954559016 934170401 346401660 361508230 214666623 52108205 463230667 801498246 43860759 49567742 322170591 917502340 250233580 623628100 486024229 837524977 483456465 174866919 972126181 40682908 489639256 964183324 749026027 68810528 751535491 936256042 716597596 371556866 94865546 216353402 568630360 107595847 710885785 498691836 195694835 385330244 141340746 690863027 551612161 325829004 781956358 923940149 97287614 396221270 401091775 955728642 207664078 832478720 854019115 188528336 998808845 505242457 217764059 473829167 501348349 101771585 748925829 28998612 523732832 670648740 515812140 820109006 892248840 224913128 573368516 98408379 254101399 515294249 648013510 134214976 366374921 358324997 610235006 105998051 540274925 207629120 45271179 436818895 767136080 501413084 569437672 506180712 783500585 807477198 752198508 251771186 100611569 379767935 235924186 673267987 835489989 704781254 983305064 32474483 41281544 718577646 758369171 808536501 634338119 142077950 775451930 342745048 307369932 80134697 888469488 295832385 84436858 17334926 235512544 618227000 167113076 527673040 412096204 9527039 818441990 267605330 319792446 523740605 323136247 324976202 271212941 873639200 443890561 809900220 956099593 136682976 692966284 672620372 711432098 74949597 617282123 916584577 371398477 223745081 783554399 10196987 683073179 409480022 863857794 757014170 433474829 625203705 195576834 492163011 380095038 847360448 716598813 832515783 114281591 35348226 568893269 644381304 193694083 480475847 113046970 128207039 575924212 66953944 864391633 554833286 437578454 700754164 629037294 580886601 263497046 349954306 136660907 201003122 399761890 335551135 211459669 410914165 1240119 44907358 877318524 954700565 250731384 171257019 964882630 586033103 378389746 429745248 843516364 685164795 541711230 49979842 758908383 29331669 53954819 715135936 722260319 128761268 101262516 401529657 800336226 266750223 280384550 824575566 351400092 108159378 667453831 51306239 238364545 508757791 571466418 625086631 323618675 586818074 209876988 913351942 301812917 817421478 798019450 140616448 854161931 624099785 827191617 646078250 380023277 323181525 294752648 601036272 720857498 928649668 42108948 686083049 615739249 370387625 211539276 230110907 840542597 284427726 654821964 956418772 87450985 849100901 219478831 960316875 821351312 696165150 275785564 850123129 915274469 332963278 729151154 220010008 914998206 343579058 744017174 550873359 723616890 449858025 974355212 275552269 557022980 992263844 651150490 962058057 630782950 284976478 96634220 984030251 247871605 157554708 634928787 305591767 819629356 327607526 611903327 998790615 344318666 677670087 72260569 279544281 426154160 333651658 915049155 914426921 784668227 438078537 485089633 330051635 981875424 64042155 515065151 405852195 899385276 283943810 779104701 65178038 467512050 469840342 609208866 583389503 209566567 717618884 989528348 475382696 991743349 711212649 658449664 223555313 100186376 354284812 948624663 166026702 415842235 483732749 637738345 568836009 545061626 64623689 640507911 92753817 51620975 28699247 291405672 916273885 394766784 743012799 673771336 752358377 806169898 832205162 850940026 729307168 343244782 271524037 802146158 166859750 132633741 350671398 855445546 907147349 225734714 452088000 359980735 603552174 100488984 645720632 794362873 529977976 790815806 544665146 629582582 675601366 476259103 621554744 335043709 932732288 135011381 329031134 197010253 789842864 578391648 397190973 112815874 771836672 477403561 545851098 345985547 987797830 380030034 731575621 26861316 483781347 925230433 17886027 256588806 336663116 763002879 128417962 676150798 492160562 710024414 200593240 75174649 485675375 471250418 608002561 479950297 743484992 444565582 374169154 999463733 683216474 974762978 907944822 111884580 654562940 93977167 978509875 985537324 244401643 585919463 326507616 12115810 877431328 781510381 976658457 148313296 674073630 394940848 505576635 929620803 171545014 274477913 348714290 333547458 868175844 705168837 771228051 868686947 271697918 303300428 394715734 816390886 130951237 423419853 85227327 364228327 769572401 485518122 738632798 287764414 317643162 694536491 907206044 208490670 26206624 901838149 190872624 405856322 146043753 401606823 99370651 96809299 337967932 849807398 556675479 193453988 865399411 582803145 897410690 57850692 328681035 566012884 35938209 962696058 10889422 251746775 244120609 385477694 123842843 719706623 310361637 478699444 148795981 590495935 167833508 565111836 570559099 400855945 567342367 221592128 389328076 399640642 280594226 671342378 392006048 262958161 412970011 418235255 290188959 90055053 548731483 368716966 493137051 688990690 615100981 25014794 484657377 728881004 811702387 777173298 953879628 839787447 943768451 126546869 670493330 302098353 288390949 867770586 33486696 147577031 63898936 392822894 501094410 846656667 258064988 458830345 998512829 702621960 56013711 700071345 617221952 658571833 762271582 915014869 946786278 857288213 326018845 799440861 333912862 894661381 930461342 828915250 891493877 430592543 453789926 28147965 928146743 202037331 714396050 327261794 398919103 538670147 866463430 712506911 837238640 704002406 460050618 849969554 307066538 23715116 903303736 29831646 387038584 214248212 936868627 458422100 43729776 648514715 890492896 878725405 911145942 708018545 544615967 403247825 920886511 237622762 861016893 546822063 940741457 762316824 734244596 906729191 582281226 669287289 695982893 73850845 541709751 289653477 339510106 613734330 853371144 503117300 188950901 340113831 746604410 262655790 811233213 516043617 193610519 321818145 889184974 779961753 390848895 422939099 732631388 864897527 598506625 371332535 139101314 812522175 852861413 418374430 565523853 314782147 233611406 700847628 714745766 854533714 181266053 731326317 63691990 906541365 717653656 169853056 844972890 907107131 770167766 333549776 144110007 869033808 168909692 371163091 726029770 394344340 483369137 215883491 868804243 968759913 865267829 802438864 990530833 830503036 562166532 312669909 299049984 317224623 487943435 875366061 994755637 855144218 174765048 101632094 772179225 744143673 835469343 651249042 349044116 28426851 993118013 139843836 902574431 805944946 763729090 800907935 208443692 243832882 461564033 329176321 275682179 259630672 244099901 669887713 995630224 585425796 475857309 853470003 38765496 643501948 219216960 593839927 274525017 77750973 560360109 516813944 716046243 341087261 781125723 984533886 609470526 635058365 917027833 76415057 917871205 479605490 797318336 251048786 171769611 302236496 825664894 540498721 584545111 29240493 994390706 156238761 162183720 118486096 440604194 207566891 443509683 637884605 431057123 99187639 612014993 675358733 166472706 122385484 433605831 761220116 40044353 430940643 495212284 624483022 987965897 378502235 558388638 1434824 351254240 328848532 954932927 872230544 349114534 623563231 575251071 665078362 94523746 308420451 404871414 375836068 740667980 360559616 937774447 903228846 291344089 415436400 493774040 612454674 894718400 630326978 639814176 797738951 916096976 867112826 892113640 463838253 488300444 566517941 793781510 377587777 170046373 957535985 593145078 174480111 130156326 895347470 782203559 894616821 939619216 685166411 762276209 457628013 450480982 589577093 618579828 4884675 636683785 877645006 905351019 563864620 337213468 254353596 164043688 376170704 315299890 902862366 906915681 535251322 439615537 686020945 391846452 123819598 342171135 847717865 59638097 983392018 520778438 847835555 107509583 226507757 792404021 276604367 520568622 701473412 869026280 211110383 106781003 717073414 357855628 206687956 235954334 248014366 584167516 281309105 243793022 608148561 967889615 257700801 980544268 44985608 102876178 477125635 733989446 140961156 859690571 739205440 725077980 598897002 641656418 137157862 641203862 28164245 619697753 173397465 380780901 443861537 299534848 653833617 295077594 316128184 645898945 642929778 254857110 164416156 706788847 398448044 329994864 335547199 305232995 752022301 459709539 453416494 932933596 580869334 519975789 383629106 66221160 458868830 729493577 216239014 580889359 816777297 831023092 877420680 129679192 356612999 921191381 133639950 720080301 842903485 633480193 603263142 385179944 144658429 936748541 351582688 68687986 198167417 788574563 360120314 824846740 727535373 260315061 603843276 656710287 191355994 885719027 624007271 933899161 756519930 212348072 454884943 567298450 168205533 512365784 541844931 719942797 415574370 461279901 136116862 422522212 836932314 419009452 30550997 279508975 901669436 277112641 576348536 72011045 839000537 213694530 717261167 781707513 542154922 141091376 617679058 588624005 430561269 903477600 409188278 136855625 317709219 382472377 267183235 401451455 179775670 23551113 375747405 87579144 170639021 296950800 505761776 474306506 973197065 752933444 455123690 685639432 346845834 760911078 821409239 995350785 66418412 278053653 454739405 786765802 173366956 628872737 265521742 878768721 31422495 504993597 480648087 699960843 502337784 321476183 773053765 373010005 935549924 672600735 577225875 342061201 334486730 929642958 398797073 604691003 733487281 755685020 318784368 715081814 531798819 337296896 874467479 154828352 536187072 787441901 531883006 535018164 515130793 412833255 261807693 220213803 297499569 479483370 159303316 602506651 493745845 148262080 657450147 672536735 461573367 460062670 388119207 243118512 889451186 549555263 364944071 765798252 708091970 180302585 58848450 572033643 964955867 216300739 375547722 882070909 712452096 211751440 863109106 140545131 892773315 482570929 114955444 808952552 827255681 924744797 59044040 613970452 811158203 521011520 240711555 649236700 985292482 835661050 429694867 873521310 793297395 835285464 756565000 481620978 438564389 865848879 533206460 209526560 216482476 525026065 174389851 477069499 748410542 858485694 460966964 222155771 831817562 839285427 834261199 849502671 986968128 764536087 242084320 495496787 774679584 136390552 305309433 66697640 872640735 60136820 326136885 911215902 923652680 562449410 183814613 928697914 153329659 475345171 550585884 496264200 75039993 79690746 420675789 134731467 312044999 767292019 683187872 343199098 513185272 396012590 512393860 57539870 41346081 510273163 882957768 967851688 420865089 518495927 549781493 926350973 334461749 161895963 1072451 972552334 888826330 686126639 596273734 208903687 145136229 41237534 787894691 28461442 78859421 5027182 962997622 966167808 330759016 690275665 516433352 524857585 804076388 972100219 374907911 910353651 876433542 628987393 193596762 451404224 659587684 138171735 237058316 228398956 831414782 535386540 995983132 409305854 53561510 437483833 366904546 52883141 725861299 496679827 622740490 305604892 934558924 464797323 343338099 592857287 180944972 789534969 168252505 204075898 475384984 293310170 630202415 623958151 22224210 109845241 131745955 354207177 75705632 509769369 420160520 831876367 704464178 104508287 157901500 285311812 836967962 649974178 880213486 8125575 95511821 809861197 221530494 4742050 663047849 823353783 461255721 55002475 957375808 507311941 351696742 897154285 64693855 559679049 111602616 953995192 294043316 901342583 163075027 342183897 571640597 60178913 653424149 74553226 369377279 201923082 597771462 907327825 225818824 308629299 56901793 721278922 2925147 53266558 793085422 435428903 966808144 458106148 444018959 594077170 811445365 238282229 569658069 885772027 903189347 183509792 15389580 978251818 714339174 999932538 172932972 870341030 150191113 112506062 696421528 685037996 443322546 772610911 708877084 914693524 739194250 562271276 325789579 397786446 335372470 965492489 78706632 120383363 203792722 203753117 418201261 281070330 984276041 359747854 735773872 599067329 862044359 923940136 234121311 692272631 597462224 503509590 438473754 268426558 641245241 83048093 992277736 754081651 738204410 89150514 463372025 375207090 246470785 770792437 638539710 588243634 940922326 111573266 933333489 517631752 342376264 56383713 310109554 65479802 591442411 694133574 398493823 610560479 7883590 128303006 190889012 238312562 991888177 25290317 140785375 822070970 332596554 557484583 74399316 902040179 68660057 320414934 897093128 556441580 450335156 442466946 639943959 129115711 956289866 503302250 886820696 289299072 315304028 682554576 35034169 958385868 625242695 643033253 126765749 903907104 344260898 37410170 862030405 793194459 973066619 857004712 571127772 770689948 806085006 79432352 862738791 725748468 120750558 551639779 796999077 565536686 218513991 37794015 442664785 156562038 415824757 886798311 525629333 528916883 819683350 198449168 378249757 644578084 65245527 918059908 668289957 455409668 739144024 31259859 69787660 312647954 595423660 267943658 807537967 896292017 22570472 634923332 372865867 273994141 77010112 912814232 887675524 663955959 604470186 400954918 906967795 29299627 778126388 893899131 185604685 325136041 747798182 958079055 120607266 669938573 763842268 270325001 551998882 612198674 94442945 992162462 233925498 36542199 784820409 167125222 193294876 621258994 525191705 902849952 560459224 616867895 879078910 465308586 220408529 369290613 237606457 203433704 109086020 664343650 23005703 623796825 182997124 970146913 616852273 998876423 860708941 104119950 593160509 73823848 912613321 846678757 418772874 622884168 62301582 234480335 914667662 493065033 505089249 212291424 550515257 327958256 994495615 973231082 611705201 556857294 595000516 536504024 864220152 320359778 818150303 448793246 914076363 787539063 928491997 416073740 574271150 500424812 731773492 993968125 453177718 358521530 450854184 264795045 196366407 154935304 535938242 194783511 407966922 562096210 381311528 516510545 780989572 424892995 869419996 754559597 900519156 530273421 802328882 129921391 837597168 749829818 70918988 658670741 943368712 362693206 424118444 912317889 225546716 522062481 418981079 876682733 748821144 808533001 569865607 63452073 197906353 720058681 503976851 516194693 818901903 903791539 229747727 830881026 511398322 779965873 382151953 666778266 511383025 781365234 801461233 921446597 87431808 346236275 971051814 960951461 698955007 375032953 593902005 128024864 985501158 624636590 955683204 27663145 949968096 352673770 87316448 865152039 283324673 284927452 963101050 572986512 890927154 250605296 89129721 606031993 229390602 5800617 373874199 298014660 138527306 575677682 299316279 508304532 452500438 442838946 200938664 552904331 511150030 701182027 592233306 328317802 619540240 23202469 205059251 897409092 792042595 905909732 261729396 926837402 840495938 618675480 291590201 517545230 299266368 333870240 412792681 854595069 634607161 564297339 741586336 271957793 584526163 481429036 641281402 909715574 769631294 240386982 832025917 847124813 753125068 689254556 498240283 961843638 550694824 499051482 272489260 559299816 904974998 948884798 947472755 227754752 762611700 348869935 921761805 849603259 628792395 957569382 95626217 775433507 863687402 341815390 876469838 69288956 933362523 656321600 81127899 778194840 464219718 338901324 204244281 198897384 741428178 155503328 364806129 652402055 51015296 476594057 871047321 32858437 98499961 946171912 176017119 140055608 576353892 76230335 292508851 756323531 22326195 52602401 791535656 266590416 980941595 949365353 633722330 985974290 653962300 21759402 488309383 773149952 422365491 710740510 353487075 912488526 755528390 185698275 203521767 668945103 698789535 575017621 669290747 483547865 903047885 744317862 289726794 462301533 28549800 742069380 617845740 260181177 436540653 834019375 384223759 194096322 493205782 42364567 710415279 139712108 578985808 595381288 458545101 720920401 758023573 553846957 634097039 855420399 251573135 725468688 615860088 148017456 829060868 338564604 249218245 65676482 822946933 107348439 566675913 208239993 208408065 827116532 157805026 577232282 539628704 10742937 743667123 600892162 481900079 210191736 301085316 466192217 709323657 324662012 696145318 504313621 129033093 369085178 282331762 391581427 4885704 697881431 966916857 161706278 705675607 279492162 445880955 720333574 325542350 671687819 846120927 434164876 91667023 741721437 537970485 672628166 841112699 797021922 592507182 60721583 125868402 101731626 168341308 68396172 950987717 839235163 66046913 374211684 43716484 913033462 817426604 746049612 902152089 745532114 339748215 373396625 577750939 415814008 676959139 514894611 701325583 444102271 548182041 612315328 10417246 596913779 164624770 92158453 658679737 381228262 573664681 662939064 957531382 392966885 136867128 49738531 963210708 452861576 136585254 535725810 969298110 307375367 487661383 81964692 815305626 662351966 578255004 90105
by wocaicai @ 2019-12-31 00:05:47
额 一个讨论似乎装不了这么大数据。。。
好吧 , 但他就是错了与正确答案差2 , 这是为什么呢????、
望各位大佬解答。。。
orz
by wocaicai @ 2019-12-31 00:06:47
上面那个数据讨论装不了 ,所以作废。。。
by DepletedPrism @ 2019-12-31 07:06:50
@zhtzshhhh666 请合理使用剪贴板...
by hht2005 @ 2019-12-31 07:35:09
@zhtzshhhh666 题解的确有错,没考虑相同元素。
by Froggy @ 2019-12-31 07:54:59
@zhtzshhhh666 要先离散化一下哦
by hht2005 @ 2019-12-31 08:00:48
@Froggy 离散化了,是错在相同元素
by Froggy @ 2019-12-31 08:28:08
@hht2005 没有处理相同元素也叫离散化,假的吧!!
by Froggy @ 2019-12-31 08:35:07
QAQ
by hht2005 @ 2019-12-31 09:03:23
@Froggy 离散化了啊,看a数组
by Froggy @ 2019-12-31 09:27:22
@hht2005
是滴,
我的意思是:是离散化了,可惜没有处理相同元素,所以是离散化假的
(应该先unique再lower_bound)
不说了,我的表达能力太差了