思路:总的立方体个数*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

相关推荐

不愿透露姓名的神秘牛友
07-10 15:58
投个小米提前批试试水,先投一个岗位看看形势,不行就再沉淀一下投第二个岗位,莫辜负
Java抽象带篮子:我嘞个骚刚,已经开始研发6g了吗
投递小米集团等公司8个岗位
点赞 评论 收藏
分享
牛客38347925...:9,2学生暑期实习失利开始投小厂,给这群人整自信了
点赞 评论 收藏
分享
牛客网
牛客网在线编程
牛客网题解
牛客企业服务