Mai intai trebuie sa te autentifici.
Cod sursa(job #1397072)
Utilizator | Data | 23 martie 2015 11:32:58 | |
---|---|---|---|
Problema | Sortare prin comparare | Scor | 40 |
Compilator | cpp | Status | done |
Runda | Arhiva educationala | Marime | 0.78 kb |
#include<cstdio>
#include<cstdlib>
#include<ctime>
using namespace std;
int n,q,x,y,aux,i,a[500009];
int main()
{
freopen("algsort.in","r",stdin);
freopen("algsort.out","w",stdout);
srand(time(NULL));
scanf("%d",&n);
for(i=1;i<=n;i++)
scanf("%d",&a[i]);
q=1;
while(q==1)
{
x=rand()%n+1;
y=rand()%n+1;
if((a[x]>a[y]&&x<y)||(a[x]<a[y]&&x>y))
{
aux=a[x];
a[x]=a[y];
a[y]=aux;
q=0;
for(i=1;i<n;i++)
{
if(a[i]>a[i+1])
{
q=1;
break;
}
}
}
}
for(i=1;i<=n;i++)
printf("%d ",a[i]);
return 0;
}