У цьому виклику ви будете будувати програму, яка зростає у міру проходження віками… До 2017 року.
Виклик
Щоразу, коли в цьому описі виклику написано "програма", ви також можете прочитати "функцію".
Коли ваше представлення буде виконано, буде виведена програма, яка становить THE LENGTH OF YOUR SUBMISSION
+ 1
байти.
Коли ця програма виконується, вона виводить програму, довжиною якої є THE LENGTH OF YOUR SUBMISSION
+ 2
байти ... і так далі.
Однак , коли ваша програма досягла довжини 2017 байт, вона замість цього повинна виводити 2017
та виходити.
Правила
- Результат кінцевої програми повинен бути
2017
і єдиним2017
. Це може бути рядок або ціле число, але воно повинно читати,2017
а не2017.0
або0x7E1
та інша дурниця. - Немає стандартних лазівки .
- Лише ваша початкова програма може вимагати введення, яке буде додано до вашого рахунку.
Отже, якщо ваша початкова програма має 324 символи і займає 13 байт, ваш загальний бал складе 324 + 13 = 337, а програма, виведена нею, повинна бути 338 байт.perl -X
Однак використання прапорів командного рядка (наприклад ) добре, якщо ваша початкова програма та всі створені програми використовують однакові прапори. Крім того, вони теж зараховуються до загальної кількості рахунків. Тире, косі риски тощо перед прапором командного рядка не зараховуються до загального, тому, наприклад,perl -X
вважається одним додатковим байтом.
- Якщо ви повертаєте функцію, це повинна бути фактична функція, а не рядок, яка при оцінці виробляє функцію.
- Неправильні лайки (якщо у вашій програмі є лайка) заборонені.
Приклад
Псевдокод, 99 байт
IF (PROGRAM LENGTH == 2017) PRINT 2017 ELSE PRINT (THE SOURCE OF THIS PROGRAM + 1 BYTE PADDING)
Ваше подання може працювати інакше, якщо воно відповідає вищевказаним правилам.
;;;
дозволено додавати лише такі НОП, як дозволено?