180 / 205
Abramyan · MatrixQiyin15 ball· ~11 daqiqa

Diagonal qismlarning yig'indisi

N × N o'lchamli kvadrat matrix matritsasi berilgan. Bosh va qo'shimcha diagonallardagi elementlar yig'indisini toping (markaziy element, N toq bo'lganda, ikkala diagonalga tegishli — uni faqat bir marta qo'shing).

example.go
func diagonalPartSums(N int, matrix [][]int) int {
    // ...
}

Misollar

kod
Input: N=3, matrix=[[1,2,3],[4,5,6],[7,8,9]]
Output: 25
kod
Input: N=4, matrix=[[1,2,3,4],[5,6,7,8],[9,10,11,12],[13,14,15,16]]
Output: 68
kod
Input: N=5, matrix=[[1,2,3,4,5],[6,7,8,9,10],[11,12,13,14,15],[16,17,18,19,20],[21,22,23,24,25]]
Output: 117

Maslahatlar

  1. Bosh diagonal: matrix[i][i], qo'shimcha diagonal: matrix[i][N-1-i].
  2. N toq bo'lsa, markaziy element ikki marta qo'shiladi — bir marta ayiring.