Pagini recente » Cod sursa (job #296611) | Cod sursa (job #1135905) | Cod sursa (job #3038342) | Cod sursa (job #2879378) | Cod sursa (job #721022)
Cod sursa(job #721022)
#include<fstream>
#include<cstring>
using namespace std;
ifstream f("ordine.in");
ofstream g("ordine.out");
int n,m,d,i,j,v[30];
char s[1000001];
int main()
{f>>s;
n=strlen(s)-1;
for(i=0;i<=n;++i)
v[s[i]-96]++;
++n;
m=-2102;
for(i=1;i<=n;++i)
{d=0;
for(j=1;j<=27;++j)
if((m!=j&&v[j]!=0&&d==0)||(v[j]>=(n-i+1)/2+1))
{m=j;
d=1;
}
g<<(char)(m+96);
v[m]--;
}
f.close();
g.close();
return 0;
}