Cod sursa(job #1817700)
| Utilizator | Data | 28 noiembrie 2016 12:45:05 | |
|---|---|---|---|
| Problema | Ordine | Scor | 0 |
| Compilator | cpp | Status | done |
| Runda | Arhiva de probleme | Marime | 0.71 kb |
#include <fstream>
#include <cstring>
#define NMAX 1000007
using namespace std;
ifstream f("ordine.in");
ofstream g("ordine.out");
char c[NMAX], ans[NMAX], last;
int i, n, fr[NMAX], pos;
int main()
{
f.getline(c, NMAX - 5);
n = strlen(c);
for (i = 0; i < n; ++ i)
fr[c[i]] ++;
for (i = 'a'; i <= 'z'; ++ i)
while (fr[i])
{
if (i != last)
{
g << (char) i;
fr[i] --;
}
for (char j = i + 1; j <= 'z'; ++ j)
if (fr[j])
{
g << (char) j;
fr[j] --;
last = j;
break;
}
}
return 0;
}
