问题 A: Steve的沙子

问题 A: Steve的沙子

时间限制: 1 Sec  内存限制: 128 MB
提交: 428  解决: 159
[状态] [讨论版] [提交] [命题人:]
题目描述

众所周知,Minecraft中的沙子在下方没有方块时就会掉落(即不能悬空), 现在Steve面前就有一堆沙子,但是Steve被屏障困住了,只能看到这堆沙子的正上方,正面和侧面,你能根据Steve看到图案帮他计算出这堆沙子最多有多少个吗?

正式地说,你将会得到由一堆立方体所组成的形状的三视图,且所有立方体不能悬空,请你给出最多可能有多少个立方体。保证答案为int范围内的整数。

输入
第一行输入两个正整数 m 和 n (m,n500) ,表示从正上方看有m行n列。接下来的m行为俯视图,每行有n个整数0或者1,1表示该行该列有沙子,0则表示没有。接下来一行n个数字表示主视图,其中第i个数字表示从正面看到的第i列的沙子的数量。最后一行m个数字,表示侧视图即从侧面看到的沙子的数量。
输出
输出一个整数,即所有沙子的最大可能的数量。
样例输入 Copy
3 4
1 1 1 1
1 1 0 1
1 1 1 1
4 2 4 4
4 3 4
样例输出 Copy
36
提示

样例所给图形如下图所示(图中黄色方块为沙子):

俯视图:

主视图:

侧视图: