Wyzwanie:
Biorąc pod uwagę kwadratową macierz wejściową A , wypełnij macierz jednym rzędem i jedną kolumną ze wszystkich czterech stron.
- Wartość każdego elementu w górnym i dolnym rzędzie powinna być sumą elementów w każdej odpowiedniej kolumnie.
- Wartość każdego elementu w lewej i prawej kolumnie powinna być sumą elementów w każdym odpowiednim wierszu.
- Wartość elementów w lewym górnym rogu i prawym dolnym rogu powinna być sumą elementów na przekątnej
- Wartość elementów w prawym górnym rogu i lewym dolnym rogu powinna być sumą elementów w przekątnej.
Przykład:
A =
1 5 3
3 2 4
2 5 5
Output:
8 6 12 12 7
9 1 5 3 9
9 3 2 4 9
12 2 5 5 12
7 6 12 12 8
Wyjaśnienie:
Lewy górny i prawy dolny element są sumą przekątnej 1 + 2 + 5 = 8 . Górne prawe i lewe dolne elementy są sumą anty-przekątnej 2 + 2 + 3 = 7 .
Górny i dolny rząd (oprócz narożników) są sumą każdej kolumny w A : 1 + 3 + 2 = 6 , 5 + 2 + 5 = 12 i 3 + 4 + 5 = 12 . Podobnie, lewa i prawa kolumna (oprócz narożników) są sumą każdego wiersza A : 1 + 5 + 3 = 9 , 3 + 2 + 4 = 9 i 2 + 5 + 5 = 12 .
Wkład:
- Niepusta kwadratowa matryca z nieujemnymi liczbami całkowitymi.
- Opcjonalny format
Wydajność:
- Matryca wypełniona jak wyjaśniono powyżej
- Format opcjonalny, ale musi być taki sam jak format wejściowy
Przypadki testowe:
Użyj zgłoszeń w tym wyzwaniu, jeśli chcesz przekonwertować format wejściowy na bardziej odpowiedni (na przykład [[1, 5],[0, 2]]
).
0
----------------
0 0 0
0 0 0
0 0 0
1 5
0 2
----------------
3 1 7 5
6 1 5 6
2 0 2 2
5 1 7 3
17 24 1 8 15
23 5 7 14 16
4 6 13 20 22
10 12 19 21 3
11 18 25 2 9
----------------
65 65 65 65 65 65 65
65 17 24 1 8 15 65
65 23 5 7 14 16 65
65 4 6 13 20 22 65
65 10 12 19 21 3 65
65 11 18 25 2 9 65
65 65 65 65 65 65 65
15 1 2 12
4 10 9 7
8 6 5 11
3 13 14 0
----------------
30 30 30 30 30 30
30 15 1 2 12 30
30 4 10 9 7 30
30 8 6 5 11 30
30 3 13 14 0 30
30 30 30 30 30 30
To jest golf golfowy , więc wygrywa najkrótsze rozwiązanie w każdym języku . Wyjaśnienia są bardzo zalecane.