Pagini recente » Cod sursa (job #1146805) | Cod sursa (job #2465757) | Cod sursa (job #147238) | Cod sursa (job #797892) | Cod sursa (job #1046643)
#include <cstdio>
#include <cstdlib>
#include <ctime>
#define N 500001
using namespace std;
int n;
long long int v[N];
void qs(int st,int dr)
{
int p=v[ (st+dr)/2 ];
int i=st;
int j=dr;
while(i<=j)
{
while(p > v[i]) ++i;
while(p < v[j]) --j;
if(i<=j)
{
int aux;
aux=v[i];
v[i]=v[j];
v[j]=aux;
++i;
--j;
}
}
if(i<dr) qs(i,dr);
if(st<j) qs(st,j);
}
int main()
{
freopen("sdo.in","r",stdin);
freopen("sdo.out","w",stdout);
scanf("%d\n",&n);
for(int i=1;i<=n;++i)
{
scanf("%d ",&v[i]);
}
/*for(int i=1;i<=n;++i)
{
printf("%d ",v[i]);
}
printf("\n");*/
qs(1,n);
/*
for(int i=1;i<=n;++i)
{
printf("%d ",v[i]);
}
*/
//printf("%d",v[k]);
return 0;
}