Cod sursa(job #110476)

Utilizator RobytzzaIonescu Robert Marius Robytzza Data 26 noiembrie 2007 20:18:11
Problema Ordine Scor 0
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.67 kb
#include <fstream.h>
#include <string.h>
long a[30],n;
void citire(){
ifstream fin("ordine.in");
char c;
fin>>c;
while (!fin.eof()){
     a[c-'a']++;
     fin>>c;
     n++;}
fin.close();
}

void afisare(){
ofstream fout("ordine.out");
while (n){
   for (int i=0;i<30;i++)
      if (a[i]!=0)            {
	  fout<<char(i+'a');
	  a[i]--;
       for (int j=i+1;j<30;j++)
	   if (a[j]!=0){
	      fout<<char(j+'a');
	      a[j]--;}
	n-=2;
       break;
       }
   if (n==1)
      for (int i=0;i<30;i++)
	 if (a[i]!=0){
	    fout<<char (i+'a');
	    n--;
	    break;}
}
fout<<"\n";
fout.close();
}

int main(){
citire();
afisare();
return 0;
}