Pagini recente » Cod sursa (job #2073579) | Cod sursa (job #1766070) | Cod sursa (job #1792674) | Istoria paginii runda/ichbscoala2015clasa7/clasament | Cod sursa (job #1752456)
#include <cstdio>
#include <cstring>
#define NMax 1000001
char s[NMax+1];
int v[27];
int main(){
freopen("ordine.in","r",stdin);
freopen("ordine.out","w",stdout);
int lg,i,j,now,sum,ok;
fgets(s,NMax,stdin);
lg = strlen(s);
if( s[lg-1]=='\n' ) --lg;
for(i = 0; i < lg; ++i) ++v[ s[i]-'a' ];
now = -1; sum = lg;
for(i = 0; i < lg; ++i)
{
ok = 1;
for(j = 0; j < 26; ++j)
if( v[j] == sum-v[j]+1 && j != now )
{
printf("%c", 'a'+j );
--v[j];
--sum;
now = j;
ok = 0;
break;
}
if(ok)
for(j = 0; j < 26; ++j )
if( v[j] && j != now )
{
printf("%c", 'a'+j );
--v[j];
--sum;
now = j;
break;
}
}
return 0;
}