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