Cod sursa(job #2792287)

Utilizator BlaugranasEnal Gemaledin Blaugranas Data 1 noiembrie 2021 13:00:08
Problema Ordine Scor 100
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 0.41 kb
#include<bits/stdc++.h>
using namespace std;
ifstream f("ordine.in");
ofstream g("ordine.out");
int n,m,d,i,j,v[30];
char s[1000001];
int main()
{
    for(f>>s,n=strlen(s)-1;i<=n;++i)
        ++v[s[i]-96];
    for(++n,m=-2102,i=1;i<=n;++i) {
        for(d=0,j=1;j<28;++j)
            if((m!=j&&v[j]&&!d)||(v[j]>=(n-i+1)/2+1))
                m=j,d=1;
        g<<(char)(m+96),--v[m];
    }
    return 0;
}