Leetcode-892 Surface Area of 3D Shapes(三维形体的表面积)

 1 class Solution
 2 {
 3 public:
 4     int surfaceArea(vector<vector<int>> &grid)
 5     {
 6         int result = 0;
 7         for(auto v:grid)
 8             for(auto d:v)
 9             {
10                 if(d==1)
11                     result += 6;
12                 else if(d==0)
13                     continue;
14                 else
15                     result += 6+4*(d-1);
16                     
17             }
18     //    cout << result << endl;
19         for(int i = 0;i < grid.size();i ++)
20         {
21             for(int j = 0;j < grid[i].size();j ++)
22             {
23                 if(i==grid.size()-1)
24                 {
25                     if(j==grid[i].size()-1)
26                     {
27                         continue;
28                     }
29                     else
30                     {
31                         if(grid[i][j]<grid[i][j+1])
32                             result -= grid[i][j]*2;
33                         else
34                             result -= grid[i][j+1]*2;
35                     }
36                 }
37                 else
38                 {
39                     if(j==grid[i].size()-1)
40                     {
41                         if(grid[i][j]<grid[i+1][j])
42                             result -= grid[i][j]*2;
43                         else
44                             result -= grid[i+1][j]*2;
45                     }
46                     else
47                     {
48                         if(grid[i][j]<grid[i][j+1])
49                             result -= grid[i][j]*2;
50                         else
51                             result -= grid[i][j+1]*2;
52                         if(grid[i][j]<grid[i+1][j])
53                             result -= grid[i][j]*2;
54                         else
55                             result -= grid[i+1][j]*2;
56                     }
57                 }
58             }
59         }
60         return result;
61     }
62 };

 

posted @ 2018-08-26 11:00  Asurudo  阅读(570)  评论(0编辑  收藏  举报