Перші листи, рухайся! була дуже популярною, але мала обмежену участь. Це буде легше вирішити, але, сподіваємось, задіяти кілька хитрощів у гольфі.
Вам дається рядок лише з малих літер. Для кожної букви, з положенням в алфавіті м , перемістіть його так , що стає м е лист від кінця. Якщо значення m більше, ніж довжина струни, перемістіть її до самої фронту. Виведіть лише повністю перетворений рядок.
Приклади:
"жирафа"
- 'g' - це 7-а літера в алфавіті, це вже 7-а літера ззаду, тому залиште її.
- 'я' - це 9-а буква, оскільки 9 більша за довжину слова, вона переходить на передню частину, тому рядок стає
igraffe
- 'r' - це 18-а літера, як-от 'i' - вона переходить на фронт:
rigaffe
- 'a' - це перша літера, вона йде до самого кінця:
rigffea
- 'f' - це 6-я літера, вона стає 6-ю ззаду:
rfigfea
- наступний 'f' - це також 6-й лист, тому він також йде до 6-го ззаду:
rffigea
- 'е' - це п'ята літера, вона йде до 5-ї ззаду:
rfefiga
"квітка"
- 'f' (6) =>
flower
- 'l' (12) =>
lfower
- 'o' (15) =>
olfwer
- 'w' (23) =>
wolfer
- 'е' (5) =>
weolfr
- 'r' (18) =>
rweolf
"ананас"
- 'p' (16) =>
pineapple
- 'i' (9) =>
ipneapple
- 'n' (14) =>
nipeapple
- 'е' (5) =>
nipaepple
- 'a' (1) =>
nipepplea
- 'p' (16) =>
pnipeplea
- 'p' (16) =>
ppnipelea
- 'l' (12) =>
lppnipeea
- 'e' (5) =>
lppneipea
(переконайтеся, що ви перемістили е, яке вже не переміщено! Тут це не має значення, але внизу це робиться.)
Дякуємо @Neil за те, що покращив тестові приклади з цими 3 доповненнями:
"піца"
- 'p' (16) =>
pizza
- 'i' (9) =>
ipzza
- 'z' (26) =>
zipza
- 'z' (26) =>
zzipa
(переміщення другого z!) - 'a' (1) =>
zzipa
"абракадабра"
- '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
"символи"
- 'c' (3) =>
haractecrs
- 'h' (8) =>
arhactecrs
- 'a' (1) =>
rhactecrsa
- 'r' (18) =>
rhactecrsa
- 'a' (1) =>
rhctecrsaa
- 'c' (3) =>
rhtecrscaa
- 't' (20) =>
trhecrscaa
- 'е' (5) =>
trhcrescaa
- 'r' (18) =>
rtrhcescaa
- 's' (19) =>
srtrhcecaa