Pagini recente » Cod sursa (job #2954119) | Cod sursa (job #2474799) | Cod sursa (job #521956) | Cod sursa (job #1867735) | Cod sursa (job #1049306)
#include<fstream>
using namespace std;
ifstream fin("algsort.in");
ofstream fout("algsort.out");
int v[500001],x,n,c[500001];
void inter(int a,int m,int b){
int i=a,j=m+1,k=a-1;
while(i<=m&&j<=b){
if(v[i]<v[j]){
c[++k]=v[i++];
}
else{
c[++k]=v[j++];
}
}
for(;i<=m;i++){
c[++k]=v[i];
}
for(;j<=b;j++){
c[++k]=v[j];
}
for(i=a;i<=b;i++){
v[i]=c[i];
}
}
void sorteaza(int a,int b){
if(a==b){
return;
}
else{
int m=(a+b)/2;
sorteaza(a,m);
sorteaza(m+1,b);
inter(a,m,b);
}
}
int main(){
fin>>n;
for(x=1;x<=n;x++){
fin>>v[x];
}
sorteaza(1,n);
for(x=1;x<=n;x++){
fout<<v[x]<<" ";
}
return 0;
}