Pagini recente » Cod sursa (job #1655697) | Cod sursa (job #2536233) | Cod sursa (job #2717912) | Cod sursa (job #2334324) | Cod sursa (job #274424)
Cod sursa(job #274424)
#include<stdio.h>
unsigned int v[50011],x[50011],n,i;
void merge(int p,int u){
if(p==u)return ;
int i,j,k,m=(p+u)>>1;
merge(p,m);
merge(m+1,u);
for(i=p,j=m+1,k=p;i<=m||j<=u;)
if(j>u||(v[i]<=v[j])&&i<=m)
x[k++]=v[i++];
else
x[k++]=v[j++];
for(i=p;i<=u;i++)
v[i]=x[i];
}
int main(){
freopen("algsort.in","r",stdin);
freopen("algsort.out","w",stdout);
scanf("%d",&n);
for(i=1;i<=n;i++)
scanf("%d",&v[i]);
merge(1,n);
for(i=1;i<=n;i++)
printf("%d ",v[i]);
return 0;}