Cod sursa(job #1803538)
| Utilizator | Data | 11 noiembrie 2016 16:14:30 | |
|---|---|---|---|
| Problema | Ordine | Scor | 0 |
| Compilator | cpp | Status | done |
| Runda | Arhiva de probleme | Marime | 0.5 kb |
#include <fstream>
#include <string.h>
using namespace std;
ifstream fin ("ordine.in");
ofstream fout ("ordine.out");
char s[1000005];
int ap[30];
int main()
{
fin >> s;
int nr=strlen(s);
for (int i=0;i<nr;i++)
ap[s[i]-'a']++;
for (int j=0;j<26;j++) if (ap[j]) {s[0]=char(j+'a'); ap[j]--; break;}
for (int i=1;i<nr;i++)
for (int j=0;j<26;j++)
if (ap[j] && (s[i-1]!=char(j+'a'))) {s[i]=char(j+'a'); ap[j]--; break;}
fout << s;
}
