Надоело постоянно интересоваться, сколько еще покемонов нужно поймать, чтобы получить эти высокоуровневые эволюции? Чудо больше нет! Теперь вы напишите полную программу или функцию, чтобы рассчитать ее для вас!
Соревнование:
В качестве входных данных ваша программа получит список затрат в конфетах, чтобы развить Покемона до следующего уровня. (Этот список может быть разделен любым разделителем по вашему выбору или в качестве аргументов функции). Ваша программа затем вернет или напечатает количество покемонов, которое должно быть поймано, включая того, который будет эволюционирован, чтобы пройти через все указанные уровни.
Как вы рассчитываете это? Вот так:
1. Сложите все расходы на конфеты: 12 + 50 = 62
2. Вычтите 3 конфеты из общего количества, это от одного покемона, которого вы сохраняете для развития: 62 - 3 = 59
3. Разделите это число на 4 (3 для ловли, 1 для передачи Профессор), всегда принимая ceil()
за результат:ceil(59/4) = 15
4. Наконец, добавьте 1 к этому итогу, чтобы получить общее количество покемонов, которых вы должны поймать, 16!
Пример Input -> Output
:
[4] -> 2
[50] -> 13
[12, 50] -> 16
[25, 100] -> 32
[19, 35, 5, 200] -> 65
Выигрыш:
Приложение уже заняло большую часть места на вашем телефоне, поэтому ваша программа должна быть максимально короткой. Полная программа или функция с наименьшим количеством байтов будет принята через две недели! (с любыми связями, улаженными самой ранней представленной записью!)
floor(Sum(L)/4)+1
? Нынешняя формула не работает для сумм, кратных 4. Например[400]
, вернуло бы 100, тогда как в действительности это должно быть 101, чтобы дополнительный развивался.Ответы:
05AB1E , 4 байта
объяснение
Попробуйте онлайн
источник
Желе,
54 байтаПопробуйте онлайн!
S
гм, целочисленное деление:
на4
и приращение‘
.источник
[4]
.Мозг-Flak 112 байт
Попробуйте онлайн!
объяснение
Он суммирует стек, вычитает один, делит на четыре и добавляет один.
источник
[4]
.C # REPL, 15 байтов
Приводит к
Func<IEnumerable<int>, int>
.источник
На самом деле, 4 байта
Попробуйте онлайн!
Объяснение:
источник
Брахилог , 5 байт
Попробуйте онлайн!
объяснение
Очень оригинальный ответ ...
источник
Python 2, 21 байт
Идео это!
Формула:
((sum(a)-1)//4)+1
где//
естьfloor-div
.источник
[4]
.BASH (sed + bc) 19
Ввод представляет собой
+
отдельный список на стандартный ввод,например:
echo '(19+35+5+200)'| sed 's~)~+4)/4~'|bc
источник
Haskell, 17 байт
источник
Пайк, 4 байта
Попробуй это здесь!
источник
Pyth, 5 байт
Попробуй это здесь!
Суммируйте ввод с
sQ
, делите на 4 с/4
и, наконец, увеличивайтеh
.источник
CJam, 7 байтов
Попробуй это здесь!
Определяет безымянный блок, который ожидает ввод в стек и оставляет результат там.
:+
суммирует список,4/
делит результат на 4 и)
увеличивает его.источник
Сетчатка ,
1817 байтКоличество байтов предполагает кодировку ISO 8859-1.
Ввод разделен переводом строки.
Попробуйте онлайн!
источник
R, 22 байта
источник
JavaScript, 29 байт
источник
SILOS
100 99103 символов + 22 для ввода образцаКод с проводкой тестирования.
введите в виде набора команд набора для изменения точек кучи, начиная с точки 512.
Попробуйте онлайн!
источник
Python 2, 40 байт
источник
sum(s)
является целым числом и/
в Python 2 будет целочисленным делением, когда оба аргумента являются целыми числами.[4]
.