К сожалению, Санта не смог вовремя поймать эльфов! Теперь он должен вернуться к изготовлению подарков. Поскольку эльфы определенно не рабы Санты, он должен выяснить, сколько стоит им заплатить.
Вызов
Учитывая некоторую информацию о подарках, определите стоимость изготовления их всех.
Каждый подарок кладется в картонную коробку и оборачивается оберточной бумагой с лентой, обмотанной вокруг него в самом конце. Оберточная бумага волшебна и не требует наложения, поэтому количество используемой оберточной бумаги точно соответствует площади поверхности коробки. Все подарки представляют собой прямоугольные призмы, потому что таким образом Санта может хранить их более компактно. Лента вращается во всех трех направлениях (поэтому длина ленты, используемой для обертывания, равна сумме трех разных периметров).
К счастью, само настоящее имеет известную цену. Картон стоит 1 доллар за квадратный метр, а оберточная бумага - 2 доллара за квадратный метр. (Подсказка: вы можете просто умножить площадь поверхности на 3: P). Лента стоит 1 доллар за метр.
Спецификации формата
Входные данные будут представлены в виде списка подарков, где каждый подарок содержит стоимость самого предмета и три измерения данного бокса. Ваш результат должен быть общей требуемой стоимостью.
Чтобы быть точным, то формула для стоимости одного настоящее со стоимостью элемента c
и размеров x
, y
и z
это c + 6 * (x * y + y * z + z * x) + 4 * (x + y + z)
.
Тестовые случаи
[[7, 8, 6, 7], [7, 7, 5, 5], [8, 9, 6, 7], [6, 5, 10, 10], [5, 9, 6, 7], [9, 9, 10, 6], [8, 10, 10, 6], [6, 5, 7, 9], [7, 10, 8, 8], [5, 9, 9, 10]] -> 11866
[[5, 10, 8, 9], [8, 8, 5, 8], [8, 7, 7, 6], [5, 9, 9, 10], [9, 7, 5, 8], [9, 8, 9, 5], [7, 5, 6, 7], [5, 7, 6, 10]] -> 8854
[[9, 8, 8, 8], [10, 9, 8, 5], [10, 7, 5, 5], [10, 10, 6, 6], [8, 5, 8, 7]] -> 4853
[[7, 7, 8, 10], [8, 10, 7, 8], [9, 7, 7, 8], [8, 5, 10, 5], [6, 6, 6, 8], [8, 9, 7, 5], [8, 5, 6, 5], [7, 9, 8, 5], [10, 10, 10, 8]] -> 9717
[[5, 8, 9, 7], [5, 8, 7, 10], [5, 7, 7, 6], [5, 5, 5, 6], [9, 9, 5, 7], [5, 6, 7, 8], [8, 5, 8, 7], [6, 9, 5, 5], [10, 10, 9, 10]] -> 9418
[[9, 9, 7, 10], [5, 8, 7, 9], [5, 5, 9, 8], [10, 5, 9, 10], [8, 5, 10, 7], [8, 9, 5, 5], [5, 10, 6, 10]] -> 8178
[[5, 9, 5, 8], [7, 8, 10, 6], [7, 10, 7, 10], [8, 9, 7, 5], [5, 7, 8, 6], [9, 9, 6, 10], [6, 5, 9, 9], [7, 9, 9, 9]] -> 9766
[[7, 10, 5, 10], [8, 10, 8, 9], [8, 6, 7, 8], [6, 9, 8, 5], [6, 7, 10, 9], [7, 6, 5, 8]] -> 7118
[[10, 6, 7, 5], [5, 9, 5, 9], [9, 7, 8, 5], [6, 6, 9, 9], [9, 9, 6, 9], [10, 5, 8, 9], [7, 5, 6, 10], [9, 10, 5, 5]] -> 8007
[[8, 10, 7, 8], [9, 10, 5, 8], [6, 7, 5, 6], [10, 10, 9, 8], [7, 5, 8, 9], [10, 10, 6, 7], [10, 8, 9, 10], [5, 10, 5, 5]] -> 9331
правила
- Применяются стандартные лазейки
- Ввод и вывод может быть дан и представлен в любом разумном формате
- Вы должны принять входные данные в виде списка подарков, а не 4 списков атрибутов.
- Это Код-гольфпоэтому выигрывает самый короткий ответ в байтах
- Ответы не принимаются
Надеюсь, этот вызов проще, чем предыдущие: P
Примечание: я черпал вдохновение для этой серии испытаний из Advent Of Code . У меня нет связи с этим сайтом
Вы можете увидеть список всех испытаний в серии, посмотрев раздел «Связанные» первой задачи здесь .
c + 6 * (x * y + y * z + z * x) + 4 * (x + y + z)