Cod sursa(job #340816)

Utilizator szabotamasSzabo Tamas szabotamas Data 16 august 2009 17:25:20
Problema Ordine Scor 0
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.66 kb
#include <iostream>
#include <fstream>
#include <string>

#define MAXC 27

using namespace std;

long v[MAXC],q,i,st1,st2;
string s;

int main(){
	ifstream fin("ordine.in");
	ofstream fout("ordine.out");
	fin >> s;
	for (i=0; i<=(s.length()); i++){
		v[int(s[i])-96]++;
	}
	st1=1;
	st2=2;
	q=0;
	while (st1!=27 || st2!=27){
		q++;
		if(q%2==1){
			while((v[st1]==0 && st1<27) || (st1==st2 && st1<27)) ++st1;
			if(st1<27){
				s[q-1]=char(st1+96);
				v[st1]--;
			}
		}
		else{
			while((v[st2]==0 && st2<27)  || (st1==st2 && st1<27)) ++st2;
			if(st2<27){
				s[q-1]=char(st2+96);
				v[st2]--;
			}
		}
	}
	fout << s;
	return 0;
}