Pagini recente » Cod sursa (job #2643019) | Cod sursa (job #725581) | Cod sursa (job #2242672) | Cod sursa (job #2072019) | Cod sursa (job #588575)
Cod sursa(job #588575)
#include<stdio.h>
#include<algorithm>
#include<string.h>
using namespace std;
char S[2000100];
int A[301];
int nr;
int P;
char c;
char d;
int main()
{
FILE *f = fopen("ordine.in","r");
FILE *g = fopen("ordine.out","w");
fscanf(f,"%s",&S);
nr = strlen(S);
for(int i=0;i<nr;i++)
A[S[i]] ++;
d = NULL;
for(int i=1;i<=nr;i++)
{
c = NULL;
for(int j='a';j<='z';j++)
if((A[j] && j != d && !c) || 2*A[j]-1>nr-i)
c = j;
A[c] --;
d = c;
fprintf(g,"%c",c);
}
fclose(g);
fclose(f);
return 0;
}