У єдиний файл напишіть програму, яка не потребує введення даних і не дає результатів. Під час запуску він повинен змінити ім'я файлу, в якому він міститься, незалежно від того, що це ім’я , не змінюючи код або створюючи інші тривалі побічні ефекти.
Будь-який спосіб досягти цього - це добре. Важливо лише те, що після запуску програми єдиною тривалою зміною є те, що ім'я файлу було перевернуто. наприклад, в каталозі не повинно бути нових файлів.
Якщо запустити програму ще раз, слід змінити назву назад. Дійсно, програму слід мати можливість запускати довільно багато разів.
Для цілей цього виклику:
- Ви можете припустити, що імена файлів завжди є рядками з малих літер (az) довжиною від 1 до 127 символів. (Якщо ваша мова вимагає, щоб файли мали розширення для запуску, просто поверніть частину перед розширенням, наприклад
mycode.bat
→edocym.bat
.) - Ви можете припустити, що файл коду знаходиться в каталозі сам по собі, тому він не матиме конфліктів імен (за винятком самого себе).
- Ви не можете припустити, що ім'я файлу не є паліндром, тобто те саме, коли перевертається. Імена файлів, які є паліндромами, повинні працювати так само добре, як і ті, що їх немає.
- Ви можете прочитати вміст або метадані вашого файлу. Тут немає обмежень щодо квіта .
- Можна припустити, що ваша програма буде працювати в певній, сучасній, звичайній операційній системі (наприклад, Windows / Linux), оскільки не всі оболонки мають однаковий набір команд.
Як конкретний приклад, скажімо, у вас програма Python у файлі, який називається
mycode
у власному каталозі. Бігpython mycode
в терміналі має призвести до повернення імені файлу
edocym
. Файлedocym
повинен бути один у своєму каталозі - жоден іменний файл більше неmycode
повинен існувати. Бігpython edocym
поверне ім'я назад до
mycode
, після чого процес можна буде повторити нескінченно.Якщо той самий файл Python було перейменовано
racecar
(без зміни коду), а потім запустітьpython racecar
нічого не повинно помітно змінюватися, оскільки "гоночний автомобіль" є паліндром. Це те саме, якщо ім'я файлу було, скажімо,
a
абоxx
.
Виграє найкоротший код у байтах. Tiereaker є вищою відповіді.