Pagini recente » Cod sursa (job #2882359) | Cod sursa (job #128149)
Cod sursa(job #128149)
#include <iostream>
#include <fstream>
using namespace std;
int main()
{
ifstream f1("ordine.in");
ofstream f2("ordine.out");
char c, vecbun[1000000];
unsigned int s[29] = {}, i, precedent = -1, l = 0;
bool stop = false;
c = f1.get();
do {
++s[c - 97];
c = f1.get();
} while (c != '\n');
l = 0;
//construim vecbun[] astfel:
//luam punem cel mai mic element,
//dar care sa nu fie egal cu elementul precedent,
//pe cea mai mica pozitie.
while (1) {
for (i = l; i < 26; ++i) {
if (s[i]) {
if (precedent != i) {
f2 << (char)(i + 97);
precedent = i;
--s[i];
break;
}
}
//else l = i;
}
if (i == 26) break;
}
f2 << endl;
f1.close();
f2.close();
return 0;
}