На жаль, Санта не зміг вчасно зловити ельфів! Він повинен повернутися до виготовлення подарунків зараз. Оскільки ельфи, безумовно, не є рабами Санта-Клауса, він повинен з'ясувати витрати, скільки їх заплатити.
Виклик
Давши деяку інформацію для подарунків, визначте вартість виготовлення всіх.
Кожен подарунок кладеться в картонну коробку і обмотується обгортковим папером, навколо нього обертається стрічка в самому кінці. Пакувальний папір магічний і не вимагає перекриття, тому кількість використовуваного обгорткового паперу точно еквівалентна площі поверхні коробки. Усі подарунки мають прямокутні призми, тому що Санта може зберігати їх більш компактно. Стрічка проходить навколо у всіх трьох напрямках (тому довжина стрічки, яка використовується для обгортання, дорівнює сумі трьох різних периметрів).
Сам подарунок, на щастя, має відому ціну. Картон коштує 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)