讨论/算法和数据结构/一个快速排序的题,一直通不过,求助!/
一个快速排序的题,一直通不过,求助!

样例一直过不了,尝试了好多次,大佬求救!

#include<iostream>
#include <bits/stdc++.h>
using namespace std;
int a[100001],N;
void QuickSort(int a[],int i,int j)
{
    if(i>=j)
        return;
    int Left=i,Right=j;
    while(Left<Right){
        while(a[Left]<=a[Right]&&Left<Right)
            Right--;
        swap(a[Left],a[Right]);
        while(a[Right]>=a[Left]&&Left<Right)
            Left++;
        swap(a[Left],a[Right]); 
    }
    QuickSort(a,i,Left-1);
    QuickSort(a,Left+1,j);
}
int main()
{
    cin>>N;
    for(int i=0;i<N;i++)
        cin>>a[i];
    random_shuffle(a,a+N);
    QuickSort(a,0,N-1);
    for(int i=0;i<N-1;i++)
        cout<<a[i]<<" "; 
        cout<<a[N-1]<<endl;
    return 0;
}
↓不可接受的输入
1000
548813502 592844616 715189364 844265744 602763370 857945619 544883177 847251737 423654796 623563696 645894115 384381708 437587209 297534605 891773001 56712975 963662764 272656294 383441521 477665111 791725033 812168726 528894921 479977171 568044563 392784793 925596633 836078768 71036058 337396161 87129296 648171876 20218399 368241537 832619842 957155154 778156756 140350777 870012145 870087251 978618342 473608040 799158563 800910752 461479362 520477480 780529175 678879533 118274423 720632651 639921016 582019791 143353285 537373228 944668918 758615620 521848328 105907606 414661941 473600422 264555611 186332344 774233686 736918177 456150335 216550356 568433948 135218173 18789798 324141004 617635500 149674863 612095722 222321385 616933998 386488978 943748075 902598471 681820297 449949989 359507902 613063461 437031952 902348578 697631195 99280351 60225466 969809068 666766711 653140032 670637873 170909586 210382561 358152170 128926298 750686138 315428349 607830666 363710773 325047227 570196775 38425425 438601513 634274053 988373831 958949269 102044806 652790318 208876758 635058877 161309511 995299565 653108322 581850332 253291601 414368588 466310772 474697505 244425588 623510106 158969586 338007617 110375139 674752322 656329591 317201744 138182949 778345481 196582356 949571051 368725165 662526868 820993230 13571641 97101271 622846093 837944906 673659631 96098401 971944998 976459465 878193468 468651198 509624371 976761090 55714692 604845518 451159213 739263581 19987672 39187788 441710921 282806959 979586730 120196564 359444468 296140199 480893536 118727714 688661186 317983173 880475893 414262988 918235472 64147501 216822133 692472119 565188865 566601448 865102563 265389491 508968960 523248052 916722956 93940505 921157611 575946495 83112486 929296197 277718564 318568954 9356701 667410376 842342079 131797862 647174138 716327197 841386122 289406090 264730164 183191363 397820751 586512933 552821484 20107550 164940460 828940028 369808095 4695482 146441763 677816539 569618404 270007968 703737280 735194020 288476432 962188544 433288063 248753139 756106691 576157335 396098278 592041926 896038389 572251901 638921080 223081630 891554430 952749009 680055572 447125378 449197731 846408666 978570923 699479277 116201909 297436951 767023702 813797819 411820141 396505738 675439077 881103200 249796275 581272875 313218332 881735359 965416218 692531591 588465083 725254281 659668414 501324383 533206251 956083639 230533023 643990196 394869292 423855043 618808561 606393216 474867521 19193200 470132188 301574816 716074533 660173538 287991003 290077609 383462226 618015426 749169836 428768698 878452191 135474068 102863359 298282327 92373886 569964911 354046664 590872762 551816255 574325255 33625093 653200815 968961765 652103274 320997243 431418434 221262682 896546598 141263902 367561871 97259926 435864919 984042235 891923358 260340928 806193991 537022517 703888585 447926173 100226886 99569084 919482612 352311660 714241298 469249171 998847002 841140129 149448304 904647744 868126060 37559384 162492931 508315450 615559567 166847517 123819982 779051018 848008227 864933292 807318960 411396724 569100744 139972583 407183297 33222386 69166990 982574956 697428772 373290752 453542680 420075367 722055605 50588112 866382325 365496099 975521512 16627969 855803343 230742341 11714081 764911697 359978059 944123520 729990561 749999247 171629677 339403816 521036603 489548942 54337986 338985116 199996525 179490267 18521794 170986592 793697702 463450976 223924682 874572962 345351678 944119750 928081292 608252867 704414399 596655412 31838923 783644248 164694156 500026293 621478406 50370058 577228585 699098077 237892814 992396395 934214001 267262534 613965952 679090618 535632797 864281442 589909977 750844246 730122026 964489765 311944995 554242436 398221067 212390501 209843754 222443223 186193005 218749367 944372388 569573531 739550796 452109038 490458801 970236684 227414629 680544694 254356482 85295567 58029162 56418334 434416628 487837705 311795876 881004558 696343485 976404390 377751837 617657919 179603677 542498776 24678728 854613583 67249630 743834542 679392775 478596326 453696839 677081576 536579208 607045060 896671290 714696932 990338945 469497187 216896981 456014623 663078203 906418088 263322378 137220420 20651004 229219323 758378651 881585404 320017144 904424977 383463891 645784599 588317117 324682972 831048457 519711192 628981848 55350 872650657 311860220 273542033 425451537 798046830 885337664 185635943 679879454 952791658 456129772 687488272 483408617 215507677 788739421 947370594 229441829 730855802 880297604 253941645 313692397 213311974 957450855 518200711 471751575 25662713 711583821 207470078 153694303 424685465 730442180 374169978 646264435 463575422 214880736 277628708 186458218 586784345 807580264 863855601 747079470 117531857 674847345 517379111 276893752 132068109 174908872 716859679 704474261 396059703 463150196 565421307 840428535 183279839 204865761 144847762 164958871 488056284 124833060 355612735 722080660 940431951 30452965 765325252 746994237 748663624 92596158 903719739 217450494 83422434 749254416 552192471 731693758 584476072 45614636 961936383 209157028 292147530 286915045 240828777 677263306 100293944 63038292 16429631 555649237 929529318 9240070 669916542 833038094 785152910 984329433 281730104 703494785 586410169 181631205 63955265 512393465 485627593 580447130 977495135 787542153 876505242 606475462 338158956 218402848 961570157 455168817 231701625 878869738 949318821 492268239 941377704 715561152 799202584 486159558 630447935 708548148 874287969 498140228 293020284 844550077 848943554 194342219 617876691 773326014 13236856 974258668 347233511 862309780 148140860 780426649 981829386 985032280 478370306 753569604 497391367 4048105 639472516 269479436 368584603 410492141 136900274 428223826 822117734 297841821 189847913 401132341 511318982 120656996 224317023 980699673 97844486 406120487 862191514 569210756 972919490 343605499 960834654 788872773 906555498 411372415 774047336 359271417 333145156 399498916 81101392 301830874 407241167 775219782 232234141 926212932 132487633 325310309 53427177 952870671 725594368 13948398 11427455 533465676 770580748 304582030 146946641 882859998 79522086 250622719 89603033 677411824 672047802 810424095 245367212 432148047 420539461 752134517 557368786 829602242 860551171 379033772 727044263 96549614 270327903 256139582 131482795 591935163 55374316 476477203 301598633 487934571 262118147 458514553 456140564 524592615 683281333 442015319 695625446 852634923 283518848 433438976 379926951 826870367 181150962 509342065 788545514 86376980 56848072 660039861 696997241 206594605 778695396 847275316 777407557 681359133 259422565 178367353 373813139 69859017 587599636 9688173 272821896 892049661 370852800 133465210 197054277 779191970 459855878 925163429 44612297 715178748 799795883 490818616 76956443 469498305 518835147 882709287 306810100 488410061 577542949 414567478 959433343 174111948 645570241 475289444 35362436 783647967 430402439 556429426 510016853 159867078 536177499 143829367 681392512 649463031 277596094 539223596 128860567 325684766 392675681 147013891 956405726 159870066 187130892 129412337 903983951 578922387 543805953 92260170 456911421 910544718 882041414 82971744 458603956 800378458 724167636 877130968 399025327 93459454 904044394 426305877 690025020 473220669 699622055 580197107 327720397 716244171 756778646 27068986 636061056 731397341 240020273 766963506 160538822 9766431 796391474 308286163 959166602 232865474 458138824 503427426 590984163 953721381 857722643 557811299 457223454 97468686 951874474 621678490 575751157 863022617 820767119 157632271 908843711 992429521 815523824 85001069 159414463 94457915 628898439 633607887 398434258 949297479 62712949 936746477 424032251 447378299 258684065 727696337 849038305 742237977 33304626 306986052 958982721 119771348 355368849 443878679 356706889 391774322 16328504 531849181 185232324 845357684 401259497 536274537 929291413 680270155 99614926 609177578 945301533 98478003 869488533 92027583 454162399 55965830 326700886 86532489 232744132 237173290 614464706 839512970 33074588 522370532 15606067 513074866 428795719 649831974 68074076 544590876 251940991 32465296 221160911 580151719 253191191 771089052 131055234 376226581 12036223 491024740 115484292 981639680 618480263 244651408 974256217 374323195 990345006 45659641 409054094 310067643 162954423 831519400 638761754 807022837 490305342 640024155 989409774 368102402 65304206 312753292 783234438 801836150 288398503 70447189 241418618 683572962 662504570 380729244 246063183 633930952 665859114 926879091 517308513 853940115 424088987 497677978 554687811 427834382 287051519 822559446 706574707 738226580 414856870 447143838 360545559 968903035 828656915 363161252 924966916 397533498 46007310 738682658 232626990 449083426 348519363 937284363 814966481 257233483 985491430 381759800 968971703 697141610 904948342 897070106 296556265 121059877 992011244 241545687 249420043 228263613 105906158 489509321 950952608 891522682 233420255 358107475 689768265 385237423 58356352 916727014 730709102 113816639 881720214 631125545 272436897 132815000 379056895 374244582 374296182 324404861 748788252 680115538 237807241 795534746 171853099 503933609 449291648 296242386 304468404 885962265 839189120 351870563 237741823 738390337 502389456 555361260 942583602 201517712 633997695 548519095 867289405 519642825 940209693 348782659 750764864 24619956 699575061 148829296 967965570 131852035 994400788 707917461 451821681 709072119 70869779 611748417 292794031 671907018 152354702 447515869 417486371 696077168 131289330 378326143 604117805 100032052 382808058 960256782 895385884 72434446 967794672 19300604 546884896 979573252 274823570 148478083 592230417 258702317 896761156 215528814 406733341 579912400 552078270 975751688 271652769 273008903 455444146 970075075 401713542 25497353 248413460 888043705 505866384 708608841

展开讨论
Canscxs发起于 2020-03-17
最近编辑于 2020-03-17
共 2 个讨论

大声告诉我 快排的过程是怎么分隔的?你这left++一直变动怎么分隔?

里面俩个while循环完 再swap呀