【leetcode】三维形体的表面积

 

int surfaceArea(int** grid, int gridSize, int* gridColSize){
    int i, j, k, res = 0;
    for(i=0; i<gridSize; i++){
        for(j=0; j<gridColSize[i]; j++){
            for(k=0; k<grid[i][j]; k++){
                res += 6;
                // 下面相邻
                if(k>0){
                    res -= 2;
                }
                // 前面相邻
                if(i>0 && grid[i-1][j]>k){
                    res -= 2;
                }
                // 左面相邻
                if(j>0 && grid[i][j-1]>k){
                    res -= 2;
                }
            }
        }
    }
    return res;
}

 

posted @ 2020-09-02 18:27  温暖了寂寞  阅读(148)  评论(0编辑  收藏  举报