Pagini recente » Cod sursa (job #2471153) | Cod sursa (job #2021542) | Cod sursa (job #2529943) | Cod sursa (job #2014699) | Cod sursa (job #1049271)
#include <fstream>
using namespace std;
ifstream fin ("algsort.in");
ofstream fout ("algsort.out");
int v[500002],c[500002],i,n;
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=1;i<=b;i++)
v[i]=c[i];
}
void sorteaza (int a,int b){
if (a==b)
return;
int m=(a+b)/2;
sorteaza (a,m);
sorteaza (m+1,b);
inter (a,m,b);
}
int main () {
fin>>n;
for (i=1;i<=n;i++)
fin>>v[i];
sorteaza (1,n);
for (i=1;i<=n;i++)
fout<<v[i]<<" ";
return 0;
}