Tantangan:
Diberikan matriks input persegi A , pad matriks dengan satu baris dan satu kolom di keempat sisi.
- Nilai setiap elemen di baris atas dan bawah harus merupakan jumlah dari elemen di setiap kolom yang sesuai.
- Nilai setiap elemen di kolom kiri dan kanan harus merupakan jumlah dari elemen di setiap baris yang sesuai.
- Nilai elemen di kiri atas, dan sudut kanan bawah harus menjadi jumlah elemen di diagonal
- Nilai elemen di kanan atas, dan sudut kiri bawah harus menjadi jumlah elemen di anti-diagonal.
Contoh:
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
Penjelasan:
Elemen kiri atas dan kanan bawah adalah jumlah dari diagonal 1 + 2 + 5 = 8 . Elemen kanan atas dan kiri bawah adalah jumlah dari anti-diagonal 2 + 2 + 3 = 7 .
Baris atas dan bawah (kecuali sudut) adalah jumlah dari masing-masing kolom dalam A : 1 + 3 + 2 = 6 , 5 + 2 + 5 = 12 dan 3 + 4 + 5 = 12 . Demikian pula, kolom kiri dan kanan (kecuali sudut) adalah jumlah dari setiap baris A : 1 + 5 + 3 = 9 , 3 + 2 + 4 = 9 dan 2 + 5 + 5 = 12 .
Memasukkan:
- Matriks kuadrat tidak kosong, dengan bilangan bulat non-negatif.
- Format opsional
Keluaran:
- Matriks tersebut diisi seperti dijelaskan di atas
- Format opsional, tetapi harus sama dengan format input
Kasus uji:
Gunakan kiriman dalam tantangan ini jika Anda ingin mengonversi format input ke format yang lebih cocok (misalnya [[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
Ini adalah kode-golf , sehingga solusi terpendek dalam setiap bahasa menang. Penjelasan sangat dianjurkan.