Pagini recente » Cod sursa (job #2712973) | Cod sursa (job #949346) | Cod sursa (job #903084) | Cod sursa (job #66537) | Cod sursa (job #2273692)
#include<iostream>
#include<fstream>
using namespace std;
ifstream f("algsort.in");
ofstream g("algsort.out");
int v[500005],n;
void ms(int i, int m,int j)
{
int w[500005],x,y,k,t;
x=i;
y=(m+1);
k=1;
while(x<=m&&y<=j)
if(v[x]<v[y])
w[k++]=v[x++];
else
w[k++]=v[y++];
while(x<=m)
w[k++]=v[x++];
while(y<=j)
w[k++]=v[y++];
t=1;
for(k=i; k<=j; k++)
v[k]=w[t++];
}
void dei(int i,int j)
{
if(i<j)
{
int m=(i+j)/2;
dei(i,m);
dei(m+1,j);
ms(i,m,j);
}
}
int main()
{
int i;
f>>n;
for(i=1; i<=n; i++)
f>>v[i];
dei(1,n);
for(i=1; i<=n; i++)
g<<v[i]<<" ";
}