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