Санта нуждается в некоторой помощи, чтобы определить, сколько эльфов ему понадобится, чтобы помочь ему доставить подарки в каждый дом.
Уголь значительно тяжелее подарков, поэтому Санте понадобятся три эльфа на каждого непослушного человека в доме. Только два эльфа нужны, чтобы помочь Санте нести подарки.
На карте Санты дом представлен как *
, а каждый дом разделен на +
.
По обе стороны от дома будет цифра: слева - число непослушных людей в доме, а справа - количество милых людей в доме. Если на одной стороне нет числа, оно интерпретируется как 0.
Санта не посещает тех, кто не в духе Рождества (они даже не заслуживают угля), поэтому иногда дом может не иметь номера по обе стороны от него. В этом случае Санта не нуждается в помощи от каких-либо эльфов
Например, одна из карт Санты может выглядеть так
1*3+2*2+1*+*2
В первом доме 1 озорной и 3 милых, Санте понадобится девять эльфов. Во втором, 2 непослушных и 2 милых, Санте понадобится десять эльфов. В третьем доме 1 непослушный и 0 симпатичных, Санте понадобятся три эльфа, а в последнем доме 0 непослушных и 2 симпатичных, Санте понадобятся четыре эльфа.
Однако это упрощенная версия одной из карт Санты. Обычно карты Санты состоят из нескольких строк и имеют квадратную форму, чтобы лучше соответствовать его списку. Карта нормалей может выглядеть примерно так ( \n
в конце каждой строки)
1*2+*+*4+1*
2*4+3*+1*6+*
*+*+4*2+1*1
*4+*3+1*+2*3
3*10+2*+*5+*
На этой карте Санта ((1 + 0 + 0 + 1 + 2 + 3 + 1 + 0 + 0 + 0 + 4 + 1 + 0 + 0 + 1 + 2 + 3 + 2 + 0 + 0) * 3) + ((2 + 0 + 4 + 0 + 4 + 0 + 6 + 0 + 0 + 0 + 2 + 1 + 4 + 3 + 0 + 3 + 10 + 0 + 5 + 0) * 2)
= 151 эльф
Вызов
Помоги Санте определить, сколько эльфов ему нужно, чтобы доставить товар в каждый дом!
дома
- Дом представлен
*
- Дома делятся на
+
- Число слева от дома символизирует количество непослушных людей (число не означает 0)
- Число справа символизирует количество приятных людей (число не означает 0)
- Во
\n
входе могут быть символы новой строки ( ), которые также следует обрабатывать как разделенные
Эльфы
- Санта нуждается в помощи трех эльфов для непослушных людей (уголь намного тяжелее подарков)
- Санта нуждается в помощи двух эльфов для хороших людей
- Если с обеих сторон не будет номера, Санта не будет посещать этот дом, и поэтому ему не нужны никакие эльфы.
Что делать
Выведите количество эльфов, которым Санта должен помочь доставить подарки в дома. Поскольку Санта должен знать, сколько эльфов нужно принести, вам нужно всего лишь напечатать добавленное количество эльфов, которое ему нужно для списка домов.
Тестовые случаи
1*1 => 5
1*2 => 7
2*1 => 8
1* => 3
*1 => 2
* => 0
1*1+1*1 => 10
1*2+2*1 => 15
1*+*1 => 5
1*1+*+1*1 => 10
*+*+*+* => 0
правила
- Входные данные могут быть либо взяты в качестве аргумента в функции, либо из STDIN или эквивалентного
- Вывод может быть либо возвращаемым значением функции, либо распечатан в STDOUT или эквивалентный
- Вход будет содержать только цифры,
+
,*
, и новую строку\n
- На выходе должно быть только общее количество эльфов, от которых Санта нуждается в помощи для доставки на Рождество
- Применяются стандартные лазейки
счет
Сани Санты полны подарков, которые дают ему меньше места для выполнения кода, поэтому ему нужен самый короткий код, который он может получить (не волнуйтесь, если это не имеет смысла. Если вы сомневаетесь в логике Санты, вы окажетесь в списке непослушных ). Из-за ПРАВИЛЬНОГО рассуждения Санты выигрывает самое короткое представление в байтах!
Leaderboard
Это фрагмент стека, который генерирует как таблицу лидеров, так и обзор победителей по языкам.
Чтобы убедиться, что ваш ответ появляется, пожалуйста, начните свой ответ с заголовка, используя следующий шаблон уценки
## Language Name, N bytes
Где N - размер вашего сообщения в байтах
Если вы хотите включить в заголовок несколько чисел (например, пролистать старые оценки или включить флаги в счетчик байтов), просто убедитесь, что фактическая оценка является последней цифрой в заголовке.
## Language Name, <s>K</s> X + 2 = N bytes
hello-world.c
. Рабочие эльфы охотно распределяются по целям, как сказал Джоджодмо (я уверен, что я знаю, что Джоджодмо, он должен быть нашим системным администратором), а затем используют функцию обратного вызова для уведомления, когда пора вставлять их в бассейн сани или когда ребенок их видел.
max(naughty) + max(nice)
эльфов для всего маршрута? Я думал, что с ним летит кучка эльфов, но, возможно, у вас есть инсайдерская информация об этом, и мне нужно присмотреться в этом году. :)