Cod sursa(job #2327928)

Utilizator adiaioanaAdia R. adiaioana Data 25 ianuarie 2019 11:01:09
Problema Ordine Scor 0
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 0.55 kb
#include <fstream>
#include <algorithm>
#include <cstring>
using namespace std;
ifstream cin("ordine.in");
ofstream cout("ordine.out");
char s[1000010],ch;
int N,FR[30],nr;
struct chestie{
    char ch;
    int fr;
}v[1000010];
bool ord(chestie A,chestie B)
{
    return(A.fr<B.fr||(A.fr==B.fr&&A.ch<B.ch));
}
int main()
{
    cin.getline(s,1000001);
    N=strlen(s);
    for(int i=0;i<N;i++)
        v[i].ch=s[i],v[i].fr=++FR[s[i]-'a'];
    sort(v,v+N,ord);
    for(int i=0;i<N;i++)
        cout<<v[i].ch;
    cout<<'\n';
    return 0;
}