Cod sursa(job #2019642)

Utilizator MoodyFaresFares Mohamad MoodyFares Data 8 septembrie 2017 11:14:04
Problema Ordine Scor 0
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.52 kb
#include <cstdio>
#include <cstring>

int f['z' + 5];

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

  char s[1000001];
  scanf("%s", s);
  int N = (int) strlen(s);
  for (int i = 0; i < N; i++) {
    f[s[i]]++;
  }
  char last = 'a' - 1;
  for (int i = 0; i < N; i++) {
    for (char ch = 'a'; ch <= 'z'; ch++) {
      if (ch != last && f[ch] > 0) {
        printf("%c", ch);
        last = ch;
        f[ch]--;
        break;
      }
    }
  }
  return 0;
}