Cod sursa(job #111067)
Utilizator | cojocaru aurelian kojo | Data | 28 noiembrie 2007 16:29:15 |
---|---|---|---|
Problema | Ordine | Scor | 0 |
Compilator | cpp | Status | done |
Runda | Arhiva de probleme | Marime | 0.46 kb |
#include<fstream.h>
#include<string.h>
ifstream f("ordine.in");
ofstream g("ordine.out");
char a[100000],e,y;
int k,i,q;
char minim(int x,int &q)
{
char min=a[x+1];q=x+1;
for(int j=x+2;j<=k;j++)
if(a[j]<min&&a[j]!=a[x])
{min=a[i];q=i;}
return min;
}
int main()
{
f>>a;
k=strlen(a)-1;
y=a[0];q=0;
for(i=1;i<=k;i++)
if(a[i]<y)
{y=a[i];q=i;}
e=a[0];a[0]=y;a[q]=e;
for(i=1;i<=k;i++)
{y=minim(i-1,q);
a[i]=a[q];
a[q]=y;
}
g<<a;
return 0;
}