Cod sursa(job #1934023)

Utilizator 1475369147896537415369Andrei Udriste 1475369147896537415369 Data 21 martie 2017 03:51:16
Problema Ordine Scor 0
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.82 kb
#include <cstdio>
#include <cstring>
#include <cctype>

char  ch;
int k, frequence[26];

int main(){

    freopen("ordine.in", "r", stdin);
    freopen("ordine.out", "w", stdout);

    while(isalpha(ch = getchar())){
        frequence[ch - 'a']++;
    }

    while(1){
        k = 0;

        while(frequence[k] == 0){
            k++;
            if(k == 25 && frequence[k] == 0){
                return 0;
            }
        }
        putchar(k + 'a');
        frequence[k]--;

        if(frequence[k] > 0){
            k++;
            while(frequence[k] == 0){
                k++;
                if(k == 25 && frequence[k] == 0){
                    return 0;
                }
            }
            putchar(k + 'a');
            frequence[k]--;
        }
    }

    return 0;
}