Натхненний цим
У пов'язаному виклику нас просять застосувати доповнення до елементів оригіналу та реверсу вхідного масиву. У цьому виклику ми збираємось зробити це трохи складніше, ввівши інші основні математичні операції.
Задавши масив цілих чисел, проведіть цикл +, *, -, //, %, ^
, де //
є ціле ділення і ^
є експонентом, застосовуючи його до зворотного боку масиву. Або, інакше кажучи, застосувати одну з перерахованих вище функцій до кожного елемента масиву, при цьому другий аргумент є зворотною стороною масиву, при цьому функція застосовується перемиканням по вищевказаному списку. Це все ще може заплутати, тому давайте працювати на прикладі.
Input: [1, 2, 3, 4, 5, 6, 7, 8, 9]
Reverse: [9, 8, 7, 6, 5, 4, 3, 2, 1]
[ 1, 2, 3, 4, 5, 6, 7, 8, 9]
Operand: + * - / % ^ + * -
[ 9, 8, 7, 6, 5, 4, 3, 2, 1]
Result: [10, 16, -4, 0, 0, 1296, 10, 16, 8]
тому вихід для [1, 2, 3, 4, 5, 6, 7, 8, 9]
буде[10, 16, -4, 0, 0, 1296, 10, 16, 8]
Для покриття кутових випадків вхід ніколи не буде містити 0, але може містити будь-яке інше ціле число в діапазоні від негативної нескінченності до позитивної нескінченності. Ви можете взяти введення як список рядків, що представляють цифри, якщо ви хочете.
Тестові справи
input => output
[1, 2, 3, 4, 5, 6, 7, 8, 9] => [10, 16, -4, 0, 0, 1296, 10, 16, 8]
[5, 3, 6, 1, 1] => [6, 3, 0, 0, 1]
[2, 1, 8] => [10, 1, 6]
[11, 4, -17, 15, 2, 361, 5, 28] => [39, 20, -378, 7, 2, 3.32948887119979e-44, 9, 308]
Це кодовий гольф, тому найкоротший код (у байтах) виграє!