https://leetcode.com/problems/surface-area-of-3d-shapes/description/ Easy

Решение

class Solution {
    fun surfaceArea(grid: Array<IntArray>): Int {
        val n = grid.size
        var area = 0
        for (i in 0 until n) {
            for (j in 0 until n) {
                val v = grid[i][j]
                if (v > 0) {
                    area += 2 + v * 4
                    if (i > 0) area -= 2 * minOf(v, grid[i - 1][j])
                    if (j > 0) area -= 2 * minOf(v, grid[i][j - 1])
                }
            }
        }
        return area
    }
}