Вступ
Парейдолія : з давньогрецької; παρα ( абзац , «одночасний, поряд») + εἴδωλον ( eídōlon , «зображення»). Тенденція трактувати розпливчастий стимул як щось відоме спостерігачеві, наприклад, інтерпретувати знаки на Марсі як канали, бачити фігури в хмарах або чути приховані повідомлення в музиці. Джерело: Wiktionary .
Наприклад:
Паралогія : З давньогрецької; παρα ( абзац , «одночасний, поряд») + λόγος ( lógos , «мова, промова, слово, ...»). Схильність до сприйняття слів у довільних послідовностях символів, як, наприклад, у кодових програмах для гольфу. Джерело: так, я це склав (насправді слово означає щось інше , як вказував @Martin).
Наприклад:
df4$/H)hEy_^p2\
jtK2$)look|x1$
Виклик
Написати програму, яка приймає додаткове ціле число як вхід, видає ціле число як вихід і включає англійське слово як частину коду. Співвідношення введення-виведення повинно відповідати цілій послідовності, яку можна знайти в OEIS .
Правила
- Дозволені лише слова з цього списку . Це, безумовно, умовно, але важливо, щоб ми всі погоджувалися щодо того, які слова приймаються; і в цьому плані цей список, мабуть, такий же хороший, як і будь-який інший.
- Слова повинні бути утворені об'єднанням принаймні двох імен функцій або висловлювань. Якщо ваша мова, наприклад, має функцію, яку називають,
correlation
її не можна використовувати як є. Сполучення повинно бути суворим: ніякі інші символи не повинні з’являтися між частинами слова. Наприклад,bro~ken
не вважатиметься словом. - Справа неважлива: і те,
valid
іvaLiD
прийнятне. - Слова в рядках не враховуються. Букви, що складають слово, повинні бути функціями або висловлюваннями на обраній мові, тобто те, що фактично виконується . Наприклад, такий код заборонено:,
'deoxyribonucleic'~1
де'...'
рядок,~
відкидає попередній вміст і1
просто друкує номер1
. - Кожна літера слова має бути необхідною . Це означає, що видалення однієї літери зі слова повинно змінити співвідношення введення-виведення. Це включає виведення іншої послідовності, або виведення будь-якої іншої речі (ів), або не видавання результатів, або спричинення помилки.
- Будь-яке додатне ціле число повинно бути прийнятним як вхідне та повинно створювати вихід, за винятком обмежень типу даних або пам'яті.
- Виходи відповідних входів
1
,2
,3
, ... повинні відповідати послідовностям з'являються в OEIS . Жодного іншого виходу не слід виробляти; лише ціле число, можливо, з пробілом або провідним пробілом. - Введення та вихід можуть бути аргументами функції або stdin / stdout.
Оцінка
Оцінка обчислюється як загальна довжина коду мінус удвічі довша довжина найдовшого слова в символах. Або рівноцінно, кількість символів, що не входять до найдовшого слова, мінус довжина найдовшого слова.
Виграє найнижчий рахунок.
Приклади
Розглянемо уявну мову постфікса, яка має такі функції c
:: введення числа; At
: обчислити квадрат; $
: додати 1.
cAt
буде дійсною програма (її вихід відповідає послідовності 1
, 4
, 9
, ..., що A000290 ), і це буде мати рахунок -3.
cAt$
буде також мати силу (послідовність 2
, 5
, 10
, ..., що A002522 ), з рахунком -2.
c$At
не було б дійсним, тому що єдине тут слово "At" і виробляється однією функцією або заявою.