Pagini recente » Cod sursa (job #475754) | Cod sursa (job #381989) | Cod sursa (job #544229) | Cod sursa (job #2545523) | Cod sursa (job #309732)
Cod sursa(job #309732)
#include<iostream>
#include<stdio.h>
#include<vector>
#include<algorithm>
using namespace std;
vector <int> inter;
int n,i,x;
void Inter(int st,int dr)
{
if(st<dr)
{
int mij=(st+dr)/2,j;
Inter(st,mij);
Inter(mij+1,dr);
vector <int> aux(500010);
merge(inter.begin()+st,inter.begin()+mij+1,inter.begin()+mij+1,inter.begin()+dr+1,aux.begin());
for(i=st,j=0;i<=dr;i++)
inter[i]=aux[j++];
aux.clear();
}
}
int main()
{
freopen("algsort.in","r",stdin);
freopen("algsort.out","w",stdout);
scanf("%d",&n);
for(i=1;i<=n;i++)
{
scanf("%d",&x);
inter.push_back(x);
}
Inter(0,n-1);
for(i=0;i<n;i++)
printf("%d ",inter[i]);
printf("\n");
return 0;
}