Hackerrank 5
Challenge
Prit’s solution
(defn hourglass-sum [arr]
"Complexity: O(n^2), (= n (count arr))
TOC: ~21 min"
(let [arr (to-array-2d arr)]
(apply max (for [x (range 1 (dec (count arr)))
y (range 1 (dec (count arr)))]
(+
(aget arr y x)
(aget arr (dec y) x)
(aget arr (inc y) x)
(aget arr (dec y) (dec x))
(aget arr (inc y) (inc x))
(aget arr (inc y) (dec x))
(aget arr (dec y) (inc x)))))))
(hourglass-sum [[-9 -9 -9 1 1 1]
[0 -9 0 4 3 2]
[-9 -9 -9 1 2 3]
[0 0 8 6 6 0]
[0 0 0 -2 0 0]
[0 0 1 2 4 0]]
)