Pagini recente » Cod sursa (job #3244101) | Cod sursa (job #318121) | Cod sursa (job #87073) | Cod sursa (job #972861) | Cod sursa (job #1280905)
#include<fstream>
using namespace std;
int n, i, v[500003], c[500003];
void interclasare(int p, int mij, int u){
int i=p;
int j=mij+1;
int k=p-1;
while(i<=mij && j<=u){
if(v[i]<v[j])
c[++k]=v[i++];
else
c[++k]=v[j++];
}
for(; i<=mij; i++)
c[++k]=v[i];
for(; j<=u; j++)
c[++k]=v[j];
for(i=p; i<=u; i++)
v[i]=c[i];
}
void sort(int p, int u){
if(p<u){
int mij=p+(u-p)/2;
sort(p, mij);
sort(mij+1, u);
interclasare(p, mij, u);
}
}
ifstream in("algsort.in");
ofstream out("algsort.out");
int main(){
in>>n;
for(i=1; i<=n; i++)
in>>v[i];
sort(1, n);
for(i=1; i<=n; i++)
out<<v[i]<<" ";
return 0;
}