Cod sursa(job #111110)

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