星际战场
星际战场
【问题描述】
在公元2099年,人类对太空的探索能力已经达到了前所未有的程度,人们疯狂的在太空中建立空间站,以适应人类对资源的需要。当然,外星人也在寻找资源,而且,有时候还会跟人类的空间站发生冲突,终于有一天,外星人为了掠夺更多的资源,将矛盾激发成了星际间的战争。
人类当然不甘示弱,派遣了作为站队总指挥官的你去指挥战斗。你的任务是极大限度的摧毁敌人的进攻部队,并且要保护自己的空间站。
为了简化问题,战场被抽象到一个三维坐标中。坐标中的每一个点用一个四元组(x,y,z, value)表示,表示人类摧毁点(x,y,z)可以得到好处值为value,当然,由于太空中有的这一点可能有人类的空间站,摧毁这一点所得到的好处值为负,所以value可能小于零。为了摧毁敌人,你的上级给你发配了一种非常昂贵的新型的武器,这种武器可以摧毁在战场中某一长方体形状空间中的任何东西,当然也包括自己的空间站。很可惜,这种新型武器有限,暂时你手头还只有一件,请你决定怎么使用这个武器,已完成你的任务,使得到的好处值最大(这里讲的好处值是在这个长方体范围内好处值的代数和)。当然,你也可以不使用。那么得到的最大好处值为零。
【输入输出】
输入文件 cube.in
第一行四个正整数sizeX,sizeY,sizeZ,n。其中sizeX,sizeY,sizeZ为长方体大小。以下的n行每一行有一个四元组(x,y,z,value)表示点(x,y,z)的好处值。未说明的点的好处值都为零。
输出文件 cube.out
仅有一行 输出可以得到的最大好处值。
【数据范围】
1≤sizeX,sizeY,sizeZ≤60 。
1≤x≤sizeX 1≤y≤sizeY 1≤z≤sizeZ
value为整数。
结果为不超过长整型的数。
【示例】
cube.in
2 2 2 8
2 2 1 10
1 1 2 10
1 1 1 –1
2 1 1 –1
1 2 1 –1
2 1 2 –1
1 2 2 –1
2 2 2 –1
cube.out
14
用户登录
还没有账号?
立即注册