Cod sursa(job #1446764)

Utilizator cristina_borzaCristina Borza cristina_borza Data 2 iunie 2015 20:11:12
Problema Ordine Scor 0
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.62 kb
#include <fstream>
#include <cstring>

using namespace std;

ifstream f("ordine.in");
ofstream g("ordine.out");

int n , v[50] , last;
char Sir[1000005];

int main()
{
    f >> Sir;
    n = strlen(Sir);
    for(int i = 0 ; i < n ; ++i){
        ++v[Sir[i] - 'a' + 1];
    }
    for(int i = 1 ; i <= n ; ++i){
        for(int j = 1 ; j <= 'z' - 'a' + 1 ; ++j){
            if(v[j] > 0 && j != last && v[i]>(n - i)/2){
                char ch = j + 'a' - 1;
                g << ch ;
                last = j;
                --v[j];
                break;
            }
        }
    }
    return 0;
}