Pagini recente » Cod sursa (job #653622) | Cod sursa (job #291788) | Cod sursa (job #2571808) | Cod sursa (job #11108) | Cod sursa (job #449788)
Cod sursa(job #449788)
#include<fstream>
#define dmax 1000004
using namespace std;
ifstream in("ordine.in");
ofstream out("ordine.out");
int n,y[30],ok;
char x[dmax],z[dmax],c;
int main()
{ int i,j;
in>>x;
in.close();
n=strlen(x);
for(i=0;i<n;i++)
y[x[i]-'a']++;
for(i=0;i<=n;i++)
{ ok=1;
for(j=0;j<=27;j++)
if(y[j]== (n-i)/2+1 )
{ z[i]='a'+j;
y[j]--;
ok=0;
}
for(j=0;j<=27 && ok;j++)
if(y[j])
{ c='a'+j;
if(c!=z[i-1] )
{ z[i]=c;
y[j]--;
ok=0;
}
}
}
for(i=0;i<n;i++)
out<<z[i];
out.close();
return 0;
}