Pagini recente » Cod sursa (job #2769905) | Cod sursa (job #2312300) | Cod sursa (job #903678) | Cod sursa (job #1615416) | Cod sursa (job #394521)
Cod sursa(job #394521)
#include<fstream>
#include<algorithm>
using namespace std;
int a[500009];
void swap(int& a, int& b){
int aux;
aux=a;a=b;b=aux;
}
int partitie(int st, int dr){
int p, pos, k, i;
srand(time(NULL));
p=((rand()%(dr-st+1))+st);
k=a[p]; pos=st;
swap(a[pos], a[p]);
for(i=st+1;i<=dr;i++)
if(a[i]<=k)
swap(a[++pos],a[i]);
swap(a[pos],a[st]);
return pos;
}
void quisort(int st, int dr){
if(st<dr){
int m=partitie(st, dr);
quisort(st, m-1);
quisort(m+1, dr);
}
}
int main(){
int n, i;
ifstream f("algsort.in");
ofstream g("algsort.out");
f>>n;
for(i=0;i<n;i++)
f>>a[i];
//quisort(0, n-1,0);
sort(a, a+n);
for(i=0;i<n;i++)
g<<a[i]<<' ';
g<<'\n';
return 0;
}