2.心中报情
【题目描述】
蒟蒻Sarva来到了ION2018同步[“同步”为将棋术语,指步兵吃了对方上一步走的子]赛赛场上,发现了一道题目:给你一个n*m的矩阵和它的k个连续的子矩阵,每个子矩阵有一个代价,选出两个有公共元素的子矩阵使得它们覆盖到的元素价值之和(重叠的部分只算一次)减去这两个子矩阵的代价最大。Sarva发现这题的暴力分可多了,整整5分呢,可是他怎么也写不对。你能帮帮他吗?
【输入格式】
第一行三个正整数n,m,k。然后n行每行m个整数给出这个矩阵每个元素的价值。最后k行每一行五个整数:x0,y0,x1,y1,c表示一个子矩阵,左上角为(x0,y0),右下角为(x1,y1),代价为c。
【输出格式】
一个整数表示题目要求最大化的那个式子的结果。特别地,如果不能选出两个有公共部分的子矩阵,输出F。
输入样例1
3 3 3
2 1 -1
-1 0 1
1 -2 1
2 1 3 2 -1
1 1 3 3 2
1 1 1 1 0
输出样例1
1
输入样例2
1 2 2
0 0
1 1 1 1 0
1 2 1 2 0
输出样例2
F
【数据规模与限制】
10个测试点,内存限制:256MB,时限:1S
对于40%数据,n,m,k<=50
对于60%数据,n,m,k<=200
对于100%数据,n,m,k<=1000,矩阵中元素价值及子矩阵代价在int范围内,保证输入的子矩阵合法。
【提示】
最好使用快读。
附赠快读模板:
信息
- 难度
- 9
- 分类
- (无)
- 标签
- 递交数
- 2
- 已通过
- 2
- 通过率
- 100%
- 上传者