Cod sursa(job #1363078)

Utilizator moise_alexandruMoise Alexandru moise_alexandru Data 26 februarie 2015 18:15:02
Problema Ordine Scor 0
Compilator cpp Status done
Runda gim_3 Marime 0.79 kb
#include <iostream>
#include <string>
#include <cstring>
#include <fstream>
using namespace std;
ifstream in("ordine.in");
ofstream out("ordie.out");
char T[1000005];
char c[1000005];
int v[1000005];
int f[40];
int main()
{
    in.getline(T,1000003);
    int n=strlen(T);
    for(int i=0;i<n;i++)
        v[i]=T[i]-97;
    for(int i=0;i<n;i++)
        f[v[i]]++;
    //cout<<f[0]<<" "<<f[1]<<" "<<f[2]<<" "<<f[3]<<" "<<f[4]<<"\n";
    int ultim=63572657;
    for(int i=1;i<=n;i++)
    {
        for(int j=0;j<=39;j++)
        {
            if(f[j]>0 && j!=ultim)
            {
                ultim=j;
                f[j]--;
                c[i-1]=(char)(j+97);
                break;
            }
        }
    }
    for(int i=0;i<n;i++)
        out<<c[i];
    return 0;
}