Pagini recente » Cod sursa (job #1914938) | Cod sursa (job #553605) | Cod sursa (job #3292098) | Concursuri | Cod sursa (job #1342880)
#include<iostream>
#include<fstream>
using namespace std;
int mx,mn,i,j,n,m,t[500005],v1,v2;
ifstream f("algsort.in");
ofstream g("algsort.out");
int main()
{
f>>n;
for(i=1;i<=n;i++)f>>t[i];
i=1;
m=n;
while(i<m)
{
mx=mn=i;
for(j=i+1;j<=m;j++)
{
if(t[mx]<t[j])mx=j;
if(t[mn]>t[j])mn=j;
}
v1=t[i];
v2=t[m];
t[i]=t[mn];
t[m]=t[mx];
if(v1>v2)
{
if(mx>mn)t[mx]=v1,t[mn]=v2;
else t[mn]=v1,t[mx]=v2;
}
else
{
if(mx>mn)t[mx]=v2,t[mn]=v1;
else t[mn]=v2,t[mx]=v1;
}
i++;
m--;
}
for(i=1;i<=n;i++)g<<t[i]<<" ";
return 0;
}