思路:总的立方体个数*6 - 重叠个数*2 从左到右,从前到后的顺序考虑重叠,这样不会重复也不会漏 if __name__ == "__main__":     N, M =map(int, input().split())     loc = []     area = 0     for _ in range(N):         tmp = list(map(int, input().split()))         area += sum(tmp)         loc.append(tmp)     area *= 6     sub = 0     for i in range(N):         for j in range(M):             if loc[i][j] > 1:                 sub += (loc[i][j]-1)*2             if j > 0:                 sub += min(loc[i][j-1], loc[i][j])*2             if i > 0:                 sub += min(loc[i-1][j], loc[i][j])*2     print(area - sub)
点赞 2

相关推荐

10-15 15:00
潍坊学院 golang
跨考小白:这又不是官方
投递拼多多集团-PDD等公司10个岗位
点赞 评论 收藏
分享
牛客网
牛客企业服务