1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 | program skata(input,output); type list=array [1..10] of integer; var ii,n : integer; r : list; procedure merge(var a,b,c : list; fa,la,fb,lb,fc : integer; var lc : integer); forward; procedure mergesort(var a : list; fa, la : integer); var b : list; i, mid : integer; begin if fa<la then begin mid := (fa + la) div 2; mergesort(a, fa, mid); mergesort(a, mid+1, la); merge(a, a, b, fa, mid, mid+1, la, fa, la); for i := fa to la do a[i]:=b[i] end end; procedure merge(var a,b,c : list; fa,la,fb,lb,fc : integer; var lc : integer); var ia, ib, ic : integer; begin ia := fa; ib := fb; ic := fc; repeat if a[ia]<b[ib] then begin c[ic]:=a[ia]; ia:=ia+1 end else begin c[ic]:=b[ib]; ib:=ib+1 end; ic := ic+1 until (ia>la) or (ib>lb); for ia := ia to la do begin c[ic]:=a[ia]; ic:=ic+1 end; for ib := ib to lb do begin c[ic]:=b[ib]; ic:=ic+1 end; lc := ic-1 end; begin readln(N); for ii:=1 to N do read(r[ii]); mergesort(r,1,N); for ii:=1 to N do write(r[ii]) end. |
-
upload with new input
-
result: Success time: 0.01s memory: 256 kB returned value: 0
4 3 6 1 3
1336
-
result: Success time: 0.01s memory: 256 kB returned value: 0
6 1 8 3
000000
-
result: Success time: 0.02s memory: 256 kB returned value: 0
4 3 4 5 5
3455
-
result: Success time: 0.01s memory: 256 kB returned value: 0
4 10 23 6 0
061023
-
result: Success time: 0.02s memory: 256 kB returned value: 0



