Pierwsze litery, ruszaj się!był bardzo popularny, ale miał ograniczony udział. Ten będzie łatwiejszy do rozwiązania, ale mam nadzieję, że w grę w golfa wejdą pewne sztuczki.
Otrzymujesz ciąg tylko małych liter. Dla każdej litery, z pozycją w alfabecie m , przesuń ją, aby stała się m- tą literą od końca. Jeśli wartość m jest większa niż długość sznurka, przenieś ją na sam przód. Wyprowadza tylko w pełni przekształcony ciąg.
Przykłady:
"żyrafa"
- „g” jest siódmą literą alfabetu, jest już siódmą literą z tyłu, więc zostaw ją.
- „i” to dziewiąta litera, ponieważ 9 jest większa niż długość słowa, idzie na przód, więc ciąg staje się
igraffe - „r” jest 18. literą, podobnie jak „i”:
rigaffe - „a” to pierwsza litera, która dochodzi do samego końca:
rigffea - „f” jest szóstą literą, staje się szóstą z tyłu:
rfigfea - następne „f” jest także szóstą literą, więc z tyłu również przechodzi na szóstą literę:
rffigea - „e” to piąte litery, a od piątej dochodzi do piątego:
rfefiga
"kwiat"
- „f” (6) =>
flower - „l” (12) =>
lfower - „o” (15) =>
olfwer - „w” (23) =>
wolfer - „e” (5) =>
weolfr - „r” (18) =>
rweolf
"Ananas"
- „p” (16) =>
pineapple - „i” (9) =>
ipneapple - „n” (14) =>
nipeapple - „e” (5) =>
nipaepple - „a” (1) =>
nipepplea - „p” (16) =>
pnipeplea - „p” (16) =>
ppnipelea - „l” (12) =>
lppnipeea - 'e' (5) =>
lppneipea(upewnij się, że przesuwasz e , który nie został jeszcze przeniesiony! Tutaj to nie ma znaczenia, ale poniżej.)
Dzięki @Neil za ulepszenie przypadków testowych dzięki 3 dodatkom:
"Pizza"
- „p” (16) =>
pizza - „i” (9) =>
ipzza - „z” (26) =>
zipza - „z” (26) =>
zzipa(przenoszenie drugiego z!) - „a” (1) =>
zzipa
"abrakadabra"
- „a” (1) =>
bracadabraa - „b” (2) =>
racadabraba - „r” (18) =>
racadabraba - „a” (1) =>
rcadabrabaa - „c” (3) =>
radabrabcaa - „a” (1) =>
rdabrabcaaa - „d” (4) =>
rabrabcdaaa - „a” (1) =>
rbrabcdaaaa - „b” (2) =>
rrabcdaaaba - „r” (18) =>
rrabcdaaaba - „a” (1) =>
rrbcdaaabaa
"postacie"
- „c” (3) =>
haractecrs - „h” (8) =>
arhactecrs - „a” (1) =>
rhactecrsa - „r” (18) =>
rhactecrsa - „a” (1) =>
rhctecrsaa - „c” (3) =>
rhtecrscaa - „t” (20) =>
trhecrscaa - „e” (5) =>
trhcrescaa - „r” (18) =>
rtrhcescaa - „s” (19) =>
srtrhcecaa