Cod sursa(job #2698392)
Utilizator | Capatina Razvan Nicolae Razvan48 | Data | 21 ianuarie 2021 21:33:41 |
---|---|---|---|
Problema | Ordine | Scor | 0 |
Compilator | cpp-64 | Status | done |
Runda | Arhiva de probleme | Marime | 0.73 kb |
#include <fstream>
#include <string>
using namespace std;
const int EPSILON = 26;
string sir;
int frecv[EPSILON];
int main()
{
ifstream in("ordine.in");
ofstream out("ordine.out");
in >> sir;
for (int i = 0; i < sir.size(); i++)
{
frecv[sir[i] - 'a']++;
}
char anterior = -1;
for (int i = 0; i < sir.size(); i++)
{
bool gasit = false;
for (int j = 0; j < EPSILON && !gasit; j++)
{
if (j != anterior && frecv[j] > 0)
{
frecv[j]--;
out << (char)('a' + j);
anterior = j;
gasit = true;
}
}
}
return 0;
}