Kombinacije sa ponavljanjem. Mislim da sam pre koju godinu postavio sors za ovo baš negde na ES. Uglavnom, daću ti ideju:
1. ove oznake 1,2 itd. da staviš u jedan niz, pa
2. onda napraviš niz indeksa koji ima onoliko članova koliko treba uvek da se pojavi na ekranu.
3. Nakon toga inicializuješ ovaj niz indeksa na 0...0
4. Onda kreneš da odbrojavaš po njemu. Kad jedan indeks preskoči maksimum, a ti sledeći uvećaš za jedan a ovog pre njega vratiš na nulu.
5. Tako dok nema više mogućnosti za uvećanje.
Eto, tako bi tvoj polazni niz npr. bio {1,3,5} a niz indeksa {0,0,0}. Ovaj niz indeksa bi se kretao na sledeći način:
Code:
0 0 0
0 0 1
0 0 2
0 1 0
0 1 1
0 1 2
...
2 1 2
2 2 0
2 2 1
2 2 2
A štampalo bi se bezmalo:
Code:
1 1 1
1 1 3
...
5 5 3
5 5 5
Ipak se ++uje.