Witam.
Rozwiązuję zadanie ze SPOJ'a, które znajdziecie pod tym linkiem: http://pl.spoj.com/problems/AL_01_02/
Mój kod prezentuje się następująco:
#include <iostream>
#include <cstring>
using namespace std;
int main()
{
int ile;
char tablica [1000000];
cin >> ile;
for (int i=0; i<ile; i++)
{
cin >> tablica;
int IleZnakow = strlen(tablica);
for (int a = IleZnakow; a > 0; a--)
{
for (int b = 0; b <= IleZnakow; b++)
{
for (int x = b + 1; x <= IleZnakow; x++)
{
if (tablica [b] < tablica [x])
{
tablica [b] = tablica [x];
tablica [x] = 0;
}
}
}
}
for (int q = 0; q < IleZnakow; q++)
{
cout << tablica [q];
}
}
return 0;
}
Wynik jest (najprawdopodobniej) prawidłowy, lecz problem jest z czasem wykonania. Jak zoptymalizować ten program?