(на основі цієї публікації та витікаючої з неї дискусії у чаті - також, велике спасибі Деннісу за TIO!)
Змагання
Виберіть мову, яка зараз доступна на сайті TryItOnline , наприклад PowerShell . Напишіть код цією мовою на цій сторінці, який не приймає жодного вводу, наприклад, що після натискання кнопки « Виконати » вихід на цій сторінці точно такий же, як і у полі «Звичайна URL-адреса», коли зберігати / зберігати натомість натискається кнопка.
Для надуманого прикладу припустимо, що це aaa
був код для вирішення цього питання в PowerShell. Потім слід вивести результат натискання кнопки « Запустити з», aaa
оскільки код https://tio.run/#powershell
повинен бути виведений https://tio.run/##K8gvTy0qzkjNyfn/PzEx8f9/AA
, а також поле «Звичайна URL-адреса» при натисканні кнопки Зберегти / Зберегти .
Оцінка балів
В результаті URL є ваша заявка на цей виклик. Переможець - найкоротша URL-адреса, виміряна в байтах. У наведеному вище прикладі URL-адреса https://tio.run/##K8gvTy0qzkjNyfn/PzEx8f9/AA
- це подання на виклик у 44 байти . Найкоротша URL-адреса, яка виконує решту цього виклику, виграє виклик і отримує очки браузера (бали не підлягають погашенню). Зважаючи на те, що існує чітка мінімальна можлива довжина, якщо два подання зрівняються в довжину, більш рання подача виграє.
Генерація URL-адрес
Це початок алгоритму генерації URL-адрес у сховищі. Ви можете бачити, як приймається основна область коду, додаються будь-які додаткові елементи, рядок зменшується і Base64 перетворюється, а потім ##
передується тощо. Я не буду тут детально описуватись; частина завдання полягає в тому, щоб проаналізувати та зрозуміти, як генеруються URL-адреси для використання будь-яких потенційних химерностей у згаданому алгоритмі.
Правила / Роз'яснення
- Фактичний код не повинен вводити даних і видавати лише quine-URL як вихід.
- Це означає , що тільки текстові поля , які повинні бути заселені при натисканні на URL єCode
,Header
,Footer
або відповідним «Compiler прапор» поля; щоInput
іArguments
поля заборонені і повинні залишатися порожніми / невикористаними. Клацання кнопки « Виконати » має змінити лишеOutput
поле. Для цього викликуDebug
поле ігнорується у всіх ситуаціях. - Звичайні правила квоти застосовуються до коду, наскільки це можливо (наприклад, код не може прочитати власний вихідний код через
.code.tio
). - Додайте опис того, як працює код у вашій подачі.
- Подання "хитрої" квітки шляхом подання запиту на тягнення Git до сховища TIO для створення URL-адреси або ярлика "хитрощі" тощо не дозволяється.
- Аналогічно, подання запиту на поновлення на оновлення певної мови для створення URL-адреси "фокус" не дозволяється.
- Будь ласка, будьте приємні до серверів Dennis і не зловживайте ними та не намагайтеся скористатися заради цього завдання.
https://tio.run/##a+a
це посилання на програму, яка виводить https://tio.run/##a+a
, чи saveState
https://tio.run/##a@a