fork download
  1. #include<bits/stdc++.h>
  2. using namespace std;
  3. #define max 200001
  4. long int a[max],a1[max],a2[max];
  5. int merge_sort(long int a[],long int m,long int n,long int o)
  6. {
  7. long int i,j,n1,n2;
  8. n1=n-m+1;
  9. n2=o-n;
  10. for(i=0;i<n1;i++)
  11. a1[i]=a[m+i];
  12. a1[i]=9999;
  13. for(j=0;j<n2;j++)
  14. a2[j]=a[n+1+j];
  15. a2[j]=9999;
  16. i=0,j=0;
  17. for(long int k=0;k<n1+n2;k++)
  18. {
  19. if(a1[i]<=a2[j])
  20. {
  21. a[k+m]=a1[i];
  22. i++;}
  23. else
  24. {
  25. a[k+m]=a2[j];
  26. j++;
  27. }
  28. }
  29. return 0;
  30. }
  31. int merge(long int a[],long int l,long int h)
  32. {
  33. if(l<h)
  34. {
  35. long int mid=(l+h)/2;
  36. merge(a,l,mid);
  37. merge(a,mid+1,h);
  38. merge_sort(a,l,mid,h);
  39. }
  40. return 0;
  41. }
  42. int main()
  43. {
  44. long int n;
  45. cin>>n;
  46. for(long int i=0;i<n;i++)
  47. cin>>a[i];
  48. merge(a,0,n-1);
  49. for(long int i=0;i<n;i++)
  50. cout<<a[i]<<"\t";
  51. return 0;
  52. }
  53.  
Success #stdin #stdout 0s 20752KB
stdin
1000
6449 50681 815 20355 49225 96713 76354 91608 65154 13543 52341 35646 85582 41385 82162 51965 12575 90403 14385 28222 75386 39536 50215 22374 15683 62977 55604 87398 57256 38109 36480 62003 82188 40204 84372 44333 79522 51517 70199 95371 92616 96725 61198 9665 13147 79100 35662 20118 2647 21098 2701 63791 33658 30591 38070 88904 38843 7443 90718 34140 25599 41979 5733 76824 40286 73636 35720 78930 24074 63761 57513 8455 86938 56541 86884 44944 62662 68096 88296 13075 63610 95913 7279 39987 51811 74848 8291 9509 39034 32399 54680 34759 3823 90913 86981 45376 23393 9328 94371 12572 56336 6581 43601 51822 8140 69034 12910 72004 82062 52743 6890 31675 16315 49420 89843 60227 11468 45580 2613 70360 52974 36974 85247 90309 99033 7971 65532 68732 75847 45432 73465 12041 2186 24245 47971 19804 20179 49473 32640 1314 79622 52806 43405 52418 58114 21414 72768 96364 70350 81729 89007 80193 82132 40906 94235 6584 44317 42321 48656 22954 25790 68439 42452 29356 4498 18497 42113 29638 46668 88596 77238 24513 96518 57633 17748 2301 42933 73127 11546 68985 97647 36675 5909 24274 58531 5730 21590 40293 9213 62915 44478 388 49680 63280 9731 34791 85760 24119 69871 26241 75147 39216 87176 12186 43644 15269 2860 42471 85687 19099 73850 63861 52786 90022 60910 11294 40970 29165 50338 72926 80015 2421 78744 40840 10930 3384 39056 76833 61471 59157 48687 34622 10410 14218 61163 1628 11292 37055 33275 96124 17827 67511 25843 45631 19802 33034 66978 13568 16336 46943 53038 85458 63033 42494 94536 21334 85947 4392 6486 56497 18286 37884 8161 772 44512 74343 67713 90074 51263 1962 47522 74108 66348 18474 89521 31 77214 37462 30420 49584 8388 52086 47376 27077 53321 79775 82754 26164 83844 96171 97116 96277 29793 33582 70776 41278 96490 40452 48182 19330 32984 17271 25278 72413 21105 8493 18610 61927 55406 67222 25253 78980 83658 54588 84305 78896 67092 92523 1850 67716 81314 22493 2947 77856 78385 52368 60801 32675 17905 48608 83950 83684 23447 5392 62239 84423 26755 99087 52824 34822 94232 22621 78175 64622 43982 73285 46038 32505 96668 27209 57975 58240 92048 59433 86546 20599 34505 51470 2177 99059 69814 25130 55866 62715 67953 24218 12980 21202 53778 51716 87713 97445 13123 61800 98598 1133 74714 55399 1254 65656 47196 77098 84631 53134 81757 65157 86687 22307 4797 85443 19959 91244 9617 8121 14821 82214 59469 2623 46867 39059 59581 58468 38095 96108 48663 82535 83240 87882 11489 29286 85654 34731 40617 48169 42339 75879 67159 89740 93746 39812 10248 28914 44935 9438 600 44926 31382 94281 35995 97054 53047 4501 59110 63317 19817 25069 48434 5324 89730 70575 88364 5788 78614 845 64394 95173 91286 75750 53507 61172 89336 26610 4085 77110 98649 56073 28467 41657 60334 61820 34254 57410 53006 22722 48372 6613 24073 18064 37506 32717 99682 76113 15185 20983 31410 59753 64808 91526 63126 80951 34361 82879 38862 68881 61534 99849 55887 34440 23788 29221 17094 66641 7797 282 67741 57411 98064 44548 42473 31141 45880 75279 22367 4923 59115 84222 15312 99192 67297 24651 88899 95685 11038 6398 51356 35344 22622 27083 98322 82425 49341 12775 75426 32411 75409 11480 29549 39238 60337 90831 24192 21478 75548 12797 68211 56041 88986 47470 6699 70392 7412 9371 42653 99276 8148 22444 92980 93863 3091 72482 26012 77261 92459 80390 94372 27718 54499 84090 4496 74545 43861 71190 68766 98466 87007 74267 824 90855 56355 17309 25268 10544 64329 53707 1098 90277 67725 25187 76347 48810 61639 77308 9157 67326 70102 29310 86146 92009 67368 88513 74683 48957 33862 46370 59664 41528 56049 35012 45732 67030 13925 33730 89495 91473 18550 68663 85384 26745 21635 67243 41802 27353 58730 82720 8819 35577 10593 6608 12567 76032 49278 54110 17083 51148 13443 65440 38349 74892 3495 28542 64798 27035 9698 19009 63179 35006 33745 74693 73347 26741 10703 23326 13112 5962 6429 95939 30005 27365 81440 7765 73536 77916 60390 9686 30172 88541 49051 65113 9659 41441 22333 90172 87606 30904 87950 84094 57921 20438 59450 71457 50135 49285 90101 9567 49670 77938 46340 80149 51677 10926 32891 40614 27559 44889 45821 94063 87121 36996 60410 2896 59265 28827 12899 87910 54803 46173 16023 47805 85293 82701 48238 67640 54907 10835 78064 72970 89479 38016 97325 11042 95624 3106 69798 86732 94300 57460 94370 68174 30874 5651 23464 15714 77215 13732 16488 46441 70344 26370 80273 73233 919 38345 47160 57664 32016 76847 4546 39012 65250 164 89449 11750 20415 71426 28841 57057 54308 63827 18283 74245 4795 37503 39463 48185 90023 86685 43795 50031 53597 89790 3118 11299 24719 90762 63793 16097 53456 93503 95477 65856 89462 37003 61426 49273 80028 36213 11607 77990 29467 78019 56735 44879 81897 67688 12909 32050 39127 77519 86926 71463 55932 80006 84840 63664 26336 37566 43303 32265 41510 61979 61469 69910 25699 63662 20917 18158 38685 42726 66461 651 42069 69586 9478 8587 94293 2435 42544 98782 76700 14839 59412 36151 51941 87123 68363 11394 13267 48365 80005 49811 94778 38236 83480 25343 77463 31963 22177 45514 14015 61600 16516 81046 49614 50424 148 82019 50535 73204 36322 51255 7544 4192 1880 36605 32064 8752 73853 25088 69505 93524 89046 7250 61002 79969 63204 29457 56453 45300 66000 41542 41918 26801 32511 41927 86875 66367 86205 63640 97461 12193 25706 876 63081 99860 41447 37990 90918 48522 60313 45418 23988 80415 16719 26442 59465 71155 85752 2503 36324 42521 47168 6012 43542 75557 18711 61878 73028 48418 88170 82253 51896 47630 56732 56319 53476 33062 14117 20042 52175 14668 5837 73482 22580 14620 14765 41881 43918 44035 99451 916 17866 19704 63527 90997 46122 948 4087 33767 25166 44268 62465 165 10599 22568 56661 96091 62504 48635 37922 46057 17366 32919 631 97349 79707 53822 17438 83391 72889 67619 49418 21258 99662 63097 6149 37962 88142 23939 66201 72621 64444 20571 28462 23435 8609 96137 81087 87309 83049 97464 29303 16572 5992 79848 9918 91210 75753 91276 36337 67052 93956 77615 43598 70026 76445 81968 24978 29300 80706 27245
stdout
31	148	164	165	282	388	600	631	651	772	815	824	845	876	916	919	948	1098	1133	1254	1314	1628	1850	1880	1962	2177	2186	2301	2421	2435	2503	2613	2623	2647	2701	2860	2896	2947	3091	3106	3118	3384	3495	3823	4085	4087	4192	4392	4496	4498	4501	4546	4795	4797	4923	5324	5392	5651	5730	5733	5788	5837	5909	5962	5992	6012	6149	6398	6429	6449	6486	6581	6584	6608	6613	6699	6890	7250	7279	7412	7443	7544	7765	7797	7971	8121	8140	8148	8161	8291	8388	8455	8493	8587	8609	8752	8819	9157	9213	9328	9371	9438	9478	9509	9567	9617	9659	9665	9686	9698	9731	9918	9999	9999	9999	0	0	0	9999	0	0	0	0	0	0	0	9999	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	9999	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	9999	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	9999	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	9999	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	9999	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0