Використання 74 символів з рядка капсули часу 2016 року
H@~*^)$.`~+1A|Q)p~`\Z!IQ~e:O.~@``#|9@)Tf\eT`=(!``|`~!y!`) Q~$x.4|m4~~&!L{%
записати фрагменти N коду всією тією ж мовою, де:
- Виходить перший фрагмент
1. - 2-й фрагмент виводить
2. - 3-й фрагмент виводить
3. - ... і т.д. ...
- N-ний фрагмент виводить
N(число, а не буквальна літера).
"Фрагмент коду" визначається як будь-який із них:
- Повна програма без необхідного введення, яка нормально виводить число .
- Функція без необхідних аргументів, яка нормально виводить / повертає число .
- Реплєї вираз, значення якого числа.
(Ви можете змішувати ці три варіанти у своїх N фрагментах.)
Символи, які ви можете використовувати в комбінованому наборі N фрагментів, - це точно 74 символи часової капсули, а також floor(N/2) додаткові байди "wildcard", які ви можете використовувати будь-де.
Наприклад, часова капсула містить три символи, @тому у ваших N фрагментах може бути лише до трьох @присутніх, якщо ви не вирішите використовувати деякі ваші floor(N/2)байд-коди для додаткових @.
Таким чином, не рахуючи символів, комбінований набір символів у ваших N фрагментах повинен бути підмножиною з 74 символів часової капсули. Їх комбіновані довжини не можуть перевищувати 74. Ви можете не використовувати повторно символи капсули або символи байк-символів між фрагментами.
Примітки
Немає жодних інших обмежень щодо довжини фрагмента чи кількості символів для одного фрагмента.
Ви повинні написати всі фрагменти від 1 до N. Це не 0 до N-1, не k до N + k-1.
Фрагменти повинні бути індивідуальними, а не один фрагмент, який виводить список
1, 2, 3, ..., N.Вихідні дані можуть бути плаваючими як
3.0на місці,3і ви можете використовувати базу, відмінне від десяткової, якщо це природна база вашої мови . Потрібно використовувати однакову базу для всіх фрагментів.Підстановки підраховуються як байти в кодуванні вашої мови . Це, ймовірно, буде ASCII, але, наприклад, якщо
∞в кодуванні вважається одним байтом, то ви можете використовувати його як один байт підстановки.Ви можете використовувати байти підстановки для багатобайтових символів. Наприклад,
∞це звичайно три байти, щоб ви могли використовувати його у фрагменті, але це обійдеться у три вашихfloor(N/2)байд-шари.Нові рядки, такі як,
\r\nможливо, вважаються одним байтом.
Приклад
У Python N = 4 можливий лише за допомогою REPL. Є floor(4/2) = 2подвійні картки.
1від капсули часу - це вираз, до якого схиляється1.2складається з однієї підстановки, а саме2. Овалів до2.3також складається з однієї підстановки. Овалів до3. Більше немає марок.4на щастя у часовій капсулі, і це дорівнює4.
Ці фрагменти короткі та тривіальні. Справжня відповідь, ймовірно, буде набагато складнішою.
(П'ять і пізніше в Python, безумовно, можливо, але я залишу це професіоналам.)
Оцінка балів
Відповідь з найбільшим N виграє; тобто той, який піднімається по цілій драбинці найвищим.
У разі вирівнювання виграє відповідь, яка використовувала найменші байти підстановки.
Якщо все-таки є нічия, виграє відповідь, яка використовувала найменше кумулятивних символів.
Якщо все-таки є нічия, попередня відповідь виграє.
07 те саме, що 7?
-n
4дійсний фрагмент, який повертає 4, у старих версіях Perl, у яких немає REPL?)