pasa_
2002.07.20
|
|
0 0
94
|
Elso nekifutasra azt mondanam, hogy az 'aa' szora az algoritmus 3-at ad, mig a helyes eredmeny 2.
Az if-ben inkabb azt kene nezni, hogy szerepelt-e mar a betu a string hatul levo reszeben, akkor mintha jo eredmeny jonne ki.
A last[] erre azert nem jo, mert 0 ertek irodik bele egyes esetekben.
exist[] = {0,0,0,0}
A ciuklusban meg
if exist[ord(v[i])] = 0 then
result <- 2 * result + 1 , exist[ord(v[i])] = 1
else
result <- 2 * result - last[ ord(v[i]) ]
illetve, ahogy latom csak az utolso betunel van gebaszt a last[]-ban, igy az eredeti algo ugy is javithato, ha az if-et kiegeszitjuk azzal, hogy
AND (i = n-1 OR v[i] <> v[n-1] )
Pasa |
Előzmény: encse (92)
|
|