Cod sursa(job #2195906)
| Utilizator | Data | 17 aprilie 2018 17:40:30 | |
|---|---|---|---|
| Problema | Sortare prin comparare | Scor | 40 |
| Compilator | cpp | Status | done |
| Runda | Arhiva educationala | Marime | 0.65 kb |
#include<fstream>
using namespace std;
ifstream cin("algsort.in");
ofstream cout("algsort.out");
int v[500005],n;
void QuickSort(int st,int dr)
{
if(st<dr)
{
int part,zid=st-1,aux;
for(int i=st;i<=dr-1;i++)
if(v[i]<=v[dr])
{
++zid;
aux=v[zid]; v[zid]=v[i]; v[i]=aux;
}
part=zid+1;
aux=v[part]; v[part]=v[dr]; v[dr]=aux;
QuickSort(st,part-1);
QuickSort(part+1,dr);
}
}
int main()
{
cin>>n;
for(int i=1;i<=n;i++)
cin>>v[i];
QuickSort(1,n);
for(int i=1;i<=n;i++)
cout<<v[i]<<' ';
}
