Как побочный результат моей задачи в Puzzling , ваша цель - выход 2016
.
Правила:
- Вы должны включить числа
10 9 8 7 6 5 4 3 2 1
в этом порядке. Они могут быть использованы как отдельные целые числа или объединены вместе (например1098
), но10
они не могут быть разделены на1
и0
- между цифрами не должно быть символов. Обратите внимание, что в некоторых языках10
может фактически не представлять целочисленный литерал10
, что является приемлемым. - Ваш код не должен содержать никаких других чисел или предопределенных
T
числовых переменных или констант (поэтому в Pyth это запрещено, поскольку это числовая константа). - Вы должны рассчитать,
2016
используя цифры. Простой вывод2016
без выполнения каких-либо операций над требуемыми числами (например, путем декодирования кодированной строки, состоящей только из буквенных символов) не допускается. Вывод2016
в куски (например20
, затем16
) также не допускается; у вас должен быть один выход, состоящий из числового значения2016
. - Действительный ответ с наименьшим количеством байтов выигрывает.
20
и16
и распечатать их один за другим , или же расчетная потребность номер , чтобы быть 2016 год перед печатью? 2) Разрешены ли функции? 3) Допускается ли объединение цифр? например1098
(я предполагаю, что да, в предыдущих комментариях, но только для подтверждения) 4) Означает ли «вычисление 2016 года с использованием целых чисел», что у нас никогда не может быть плавающих значений где-либо на промежуточном этапе? Например, я могу квадратный корень из числа и округлить вниз?T987654321
?10
должны быть включены, так что вам нужно как-то с этим справиться. 6 Пока10
появляется раньшеT
.Ответы:
Желе ,
171514 байтПопробуйте онлайн!
Как это устроено
источник
Гексагония, 61 байт
Не собираюсь побеждать, но я просто хотел бросить вызов в Гексагонии.
Это использует другой метод, чем другие ответы (гораздо хуже). Он принимает некоторые факторы 2016 года (2,3,6,7,8) и умножает их все вместе.
уменьшенная:
Unminified:
Объяснение в ближайшее время;
источник
Pyth, 16 байт
Делает целочисленное деление, затем добавляет (3-21).
Попробуй это здесь .
источник
TI-BASIC,
1715 байтЭто использует метод @ nicael.
17 байтов:
Это решение от Puzzling можно напрямую перевести на TI-BASIC.
источник
Japt,
1716 байтЯ ненавижу это 17. Вероятно, найдет другое решение.YAYZ.Объяснение:
321q
квадратный корень из 321.~~
этажей номер.Попробуйте онлайн!
источник
Â
==~~
:-)109876/54-321¬f
15 :-D109876/54-321q)f
сейчас работает. Другое предложение не делает.Matlab / Octave, 23 байта
Попробуйте онлайн
источник
до н.э., 14
Ничего захватывающего здесь - заимствует из других ответов.
источник
109876 54/3+21-p
оценивает 16, но не гарантирует собственный ответ.Haskell, 31 байт
Не самый короткий,
10+9*8-7+654*3-21
как видно из других ответов, работает и в Haskell, но что-то другое.Это создает список, начинающийся с
10
и9*8*7+6 = 510
, поэтому смещение относится500
к следующим элементам. Весь список есть[10,510,1010,1510,2010,2510 ...]
. Мы выбираем4th
элемент (на основе индекса 0), т.е.2010
и добавляем3*2*1 = 6
. Вуаля.Я использую,
const 6 5 = 6
чтобы избавиться от того,5
что не нужно.источник
Python 2, 20 байт
Опять тот же скучный
2016.(740)
. Используется тот факт, что если в вашем выражении нет десятичного числа, возвращается целое число.источник
> <> (рыба), 18 байт
объяснения:
умножает 9 8 и 7 вместе, чтобы получить 504, переворачивает стек и переворачивает его снова непосредственно перед добавлением 4, затем умножает 504 и 4, чтобы получить 2016. Затем печатает число и завершает программу до последних 3 чисел (я мог сделать это после тоже без разницы, если это имеет значение по правилам).
источник
Математика ++ , 17 байт
На самом деле, это печатает
2016.0
. Но на самом деле нет возможности напечатать точную строку2016
на этом языке.17-байтовое решение TI-BASIC также будет работать здесь.
источник
Полиглот, 17 байт
Этот код, впервые использованный в ответе TI-BASIC Томаса Ква , также работает в:
JavaScript (консольный ввод, следовательно, недопустим)Требуется вторая проверкаPerl 5 (функция, следовательно, не действительна).Требуется вторая проверкаисточник
10+9*8-7+654*3-21
является ни JavaScript, ни функцией Perl.𝔼𝕊𝕄𝕚𝕟 2, 15 символов / 17 байтов
Try it here (Firefox only).
Переводится в
round(109876/54+3-21)
.Спасибо @Dennis за сохранение 2 байта!
источник
Java 7, 31 байт
Скучный порт из других ответов, из которых я считаю, что ответ @Dennis 'Jelly был первым.
источник
PHP, 27 байт
(22 байта) было слишком скучно,
поэтому я использовал от 10 до 9 как отдельные числа:
другие решения, в основном с небольшими читами:
источник
Млечный Путь 1.6.5 ,
2825 байтобъяснение
источник
BotEngine ,
42393613x2 = 26источник
05AB1E , 15 байтов
Попробуйте онлайн!
Порт Денниса ответ.
источник
Далее 22 байта
Такой же расчет виден в других ответах.
Попробуйте онлайн
источник
C 37 байт
Та же тема, что и у многих присутствующих.
источник
VBA, 15 байт
(расчет стыдливо украден у Дениса )
источник
JavaScript (ES6), 21 байт
Если «обратный отсчет» дошел до 0, это можно сделать за 19 байтов.
И, учитывая, что сейчас 2017 год, это также может быть сделано в 21 байте:
источник