yo!
heh, ma znas sta je fora, kopam po glavi, trazim ideje... to bi moralo da se radi nekako rekurzivno, svakako..
inace, rekli su mi momci sta ocekuju: taj set slova: brojevi 0-9, i sva mala slova abecede - ako pravimo stepen N od 5 karaktera, znaci da blok svih kombinacija bude 5 karaktera, ocekuje se fajl od 21 GB!!!!!!!
lagali su me kad su rekli da je to 14mb!! to je, kao, bila fora. ^_^ ono: "ha-ha". :P
dakle, to mora da je jako "interesantno" napraviti, ali kapiram globalno:
1) imam niz karaktera koje hocu da kombinujem "123456abc". recimo. stepen N je 3.
moram petljom da idem kroz:
- svaki clan, sa rotacijom svih ostalih clanova, sa minimalnom duzinom N.
e sad, nije frka trcati kroz clanove niza, opusteno, ali rotirati ostale, u smislenom redosledu, po vaznosti - to je malo jebeno..
i sada gledam, kako bi na kraju i testirao da li to valja? :| mislim, najbezbolnije je uzeti "mali" primer, i onda rucno tj. peske proveriti rezultate.. npr:
123
124
125
126
12a
12b
12c
132
134
135
136
13a
13b
13c
142
143
145
146
14a
14b
14c
152
153
154
156
15a
15b
15c
i ok, vidis da postoji po 7 rotacija za svaku kombinaciju, znaci to bi "generalno" trebalo da je izvodljivo, vec vidim nekakav algoritam za ovo, nije obavezno nemoguce, jer - sve sto se ponavlja, moze da se sablonizuje, a sve sto se sablonizuje - moze da se iskodira!
problem je sto je duzina sloga N promenljiva, i lako je ovo uraditi sa N = 3.
ajde da probamo za N=4
1234
1235
1236
123a
123b
123c
1243
1245
1246
124a
124b
124c
1253
1254
1256
125a
125b
125c
hm hm...
vidis, sada ima 6 elemenata u svakom "bloku" slogova... hmmmmm ..
thinking, thinking......
ajde brisem da zavrsim nesto drugo, pa cu probati da napravim neku doslednost ovde, i onda da se to i iskodira.... izem ti i zahtev, u cetvrtak poslepodne!
a bio je tako lep dan! hahahha :P
poz,
dootzky