Problem
Utwórz program lub funkcję, która może obliczyć wynik macierzy podniesionej do n- tej potęgi. Kod weźmie dowolnej macierzy kwadratowej A i nieujemną liczbę całkowitą, n i powrót macierz wartości A n .
Ograniczenia
Wbudowane funkcje obliczające moc macierzy i iloczyn macierzy są niedozwolone.
Obowiązują pozostałe standardowe zasady gry w golfa kodowego.
Wyjaśnienie
Biorąc pod uwagę macierz kwadratową A , wartość A n = AA ⋯ A (iloczyn macierzy A z samym sobą, n razy). Jeśli n jest dodatnie, stosowany jest właśnie wspomniany standard. Gdy n wynosi zero, macierz identyczności z tego samego rzędu A jest wynik.
Cel
To jest gra w golfa i wygrywa najkrótszy kod.
Przypadki testowe
Tutaj A jest macierzą wejściową, n jest liczbą całkowitą na wejściu, a r jest macierzą wyjściową, gdzie r = A n .
n = 0
A = 62 72
10 34
r = 1 0
0 1
n = 1
A = 23 61 47
81 11 60
42 9 0
r = 23 61 47
81 11 60
42 9 0
n = 2
A = 12 28 -26 3
-3 -10 -13 0
25 41 3 -4
-20 -14 -4 29
r = -650 -1052 -766 227
-331 -517 169 43
332 469 -1158 -53
-878 -990 574 797
n = 4
A = -42 -19 18 -38
-33 26 -13 31
-43 25 -48 28
34 -26 19 -48
r = -14606833 3168904 -6745178 4491946
1559282 3713073 -4130758 7251116
8097114 5970846 -5242241 12543582
-5844034 -4491274 4274336 -9196467
n = 5
A = 7 0 -3 8 -5 6 -6
6 7 1 2 6 -3 2
7 8 0 0 -8 5 2
3 0 1 2 4 -3 4
2 4 -1 -7 -4 -1 -8
-3 8 -9 -2 7 -4 -8
-4 -5 -1 0 5 5 -1
r = 39557 24398 -75256 131769 50575 14153 -7324
182127 19109 3586 115176 -23305 9493 -44754
146840 31906 -23476 190418 -38946 65494 26468
42010 -21876 41060 -13950 -55148 19290 -406
44130 34244 -35944 34272 22917 -39987 -54864
1111 40810 -92324 35831 215711 -117849 -75038
-70219 8803 -61496 6116 45247 50166 2109
A^-1
być stosowany jako zamiennik inv(A)
?
exp(k*log(M))
dozwolone (Chociaż może to nie działać z powodu nietypowych gałęzi).