Cod sursa(job #1639639)

Utilizator KindaBearNyulas Miklos KindaBear Data 8 martie 2016 13:08:39
Problema Ordine Scor 0
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.89 kb
#include <iostream>
#include <fstream>

using namespace std;

int main()
{
    ifstream f("ordine.in");
    ofstream g("ordine.out");
    char elozo,betu;
    int t[30]={0};
    int n=0,i,j,k,ok,x;
    f>>betu;
    n=0;
    while(!f.eof())
    {
        n++;
        f>>betu;
        t[betu-'a']++;
    }
    for(i=0;i<n;i++)
    {
        x=0;
        for(j=0;j<26&&x!=1;j++)
        {
            if(t[j]!=0 && j+'a'!=elozo)
            {
                t[j]--;
                ok=1;
              for(k=0;k<26;k++)
            {
                if(t[k]>(n-i)/2)
                    ok=0;
            }
            if(ok==1)
            {
                g<<j+'a';
                elozo=j+'a';
                x=1;
            }
            else
            {
                t[j]++;
            }
            }

        }
    }
    f.close();
    g.close();
}