Pagini recente » Cod sursa (job #2956433) | Cod sursa (job #2612029) | Clasament m2 | Cod sursa (job #1502508) | Cod sursa (job #1053660)
#include<fstream>
#include<cstdlib>
using namespace std;
long long n,i,v[10000];
long partitie(int s,int r, int pivot)
{
long long pi=v[pivot];
long long ax;
ax=v[r];
v[r]=v[pivot];
v[pivot]=ax;
long long t=s;
for(int i=s;i<r;i++)
{
if(v[i]<=pi)
{
ax=v[i];
v[i]=v[t];
v[t]=ax;
t++;
}
}
ax=v[r];
v[r]=v[t];
v[t]=ax;
return t;
}
void qsort(int s, int r)
{
if(s<r)
{
int w=partitie(s,r,s+(v[s]*v[s])%(r-s));
qsort(s,w-1);
qsort(w+1,r);
}
}
int main()
{
ifstream f("algsort.in");
ofstream g("algsort.out");
f>>n;
for(i=1;i<=n;i++) f>>v[i];
f.close();
qsort(1,n);
for(i=1;i<=n;i++) g<<v[i]<<" ";
g.close();
return 0;
}