Lấy cảm hứng từ điều này
Trong thử thách được liên kết, chúng tôi được yêu cầu áp dụng bổ sung cho các yếu tố của bản gốc và đảo ngược của mảng đầu vào. Trong thử thách này, chúng tôi sẽ làm cho nó khó khăn hơn một chút, bằng cách giới thiệu các hoạt động toán học cơ bản khác.
Cho một mảng các số nguyên, chu kỳ xuyên qua +, *, -, //, %, ^
, trong đó //
phân chia số nguyên và ^
là số mũ, trong khi áp dụng nó cho đảo ngược của mảng. Hay nói cách khác, áp dụng một trong các hàm trên cho từng phần tử của mảng, với đối số thứ hai là đảo ngược của mảng, với hàm được áp dụng theo chu kỳ thông qua danh sách trên. Điều này có thể vẫn còn gây nhầm lẫn, vì vậy hãy làm việc qua một ví dụ.
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]
nên đầu ra cho [1, 2, 3, 4, 5, 6, 7, 8, 9]
sẽ là[10, 16, -4, 0, 0, 1296, 10, 16, 8]
Để bao quát các trường hợp góc, đầu vào sẽ không bao giờ chứa 0, nhưng có thể chứa bất kỳ số nguyên nào khác trong phạm vi từ vô cực âm đến vô cực dương. Bạn có thể lấy đầu vào làm danh sách các chuỗi biểu thị các chữ số nếu bạn muốn.
Các trường hợp thử nghiệm
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]
Đây là một mã golf để mã ngắn nhất (tính bằng byte) thắng!