5838. 旅游路线

Time Limits: 1000 ms  Memory Limits: 131072 KB  Detailed Limits  

Goto ProblemSet

Description

GZOI队员们到X镇游玩。X镇是一个很特别的城镇,它有m+1条东西方向和n+1条南北方向的道路,划分成m*n个区域,这些区域标从北到南、从西到东的坐标标识为从坐标 (1,1) 到坐标(m,n)。 GZOI队员们预先对这m*n个区域打分V(i,j)(分数可正可负)。分数越高表示他们越想到那个地方,越低表示他们越不想去。为了方便游玩,队员们需要选定一个连续的区域集合作为活动范围。例如,如果他们选择了最西北的区域(m1,nl)和最东南(m2,n2)区域(m1<=m2,n1<=n2),那他们的活动范围是 {D(i,j)|m1<=i<=m2,n1<=j<=n2},其游览总分则为这些活动范围的区域总分。 GZOI队员们希望他们活动范围内的区域的分值总和最大。你的任务是编写一个程序,求出他们的活动范围(m1,nl),(m2,n2〉。 
 

Input

输入第一行为整数m(1<=m<=200),n(1<=n<=200),用空格隔开 下面为m行,每行有n列整数,其中第i行第j列的整数,代表V(i,j),每个整数之间用空格隔开,每个整数的范围是 [-200000,200000],输入数据保证这些整数中,至少存在一个正整数。

Output

输出只有一行,为最高的分值。
 

Sample Input

4 5
1 -2 3 -4 5
6 7 8 9 10
-11 12 13 14 -15
16 17 18 19 20

Sample Output

146
 做法:最大子段和
 
代码如下:

 #include <cstdio>
#include <iostream>
#include <cstring>
#define N 207
#define LL long long
#define rep(i,a,b) for(int i=a;i<=b;i++)
#define max(a,b) (a)>(b)?(a):(b)
using namespace std;
int n,m,val[N][N];
LL f[N], Q[N][N], ans; void Init(){
scanf("%d%d",&n,&m);
rep(i,,n)
rep(j,,m){
scanf("%d",&val[i][j]);
Q[i][j]=Q[i-][j]+val[i][j];
}
} void Get(int up,int down){
rep(i,,m)
f[i]=Q[down+up][i]-Q[up-][i];
LL sum=;
rep(i,,m){
if(sum+f[i]>) sum+=f[i],ans=max(ans,sum);
else sum=;
} } void Work(){
rep(i,,n)
rep(j,,n-i)
Get(i,j);
} int main(){
Init();
Work();
printf("%lld",ans);
}

最新文章

  1. [原]Redis主从复制各种环境下测试
  2. 通过PowerShell获取TCP响应(类Telnet)
  3. HRBUST 1430 矩阵快速幂
  4. MPlayerX For Mac白屏问题
  5. java String 空指针异常
  6. 转:基于Webrtc的跨平台实时语音通信解决方案(讲座)
  7. 结构体 typedef关键字
  8. crontab定时任务
  9. VR全景智慧城市——商家的需求才是全景市场的核心竞争力
  10. Let&#39;s Encrypt与DNS轮循
  11. 结合bootstrap fileinput插件和Bootstrap-table表格插件,实现文件上传、预览、提交的导入Excel数据操作流程
  12. Docker最佳实践-部署LNMP环境
  13. SQL Server将自己的查询结果作为待查询数据子列之二
  14. C语言第二次博客作业
  15. Java设计模式之十 ---- 访问者模式和中介者模式
  16. html 響應式web設計
  17. Android-认识Bitmap
  18. 2199: [Usaco2011 Jan]奶牛议会 2-sat
  19. java native方法与JNI实现
  20. Swift 开发中,为什么要远离 Heap?

热门文章

  1. Gym 101047K Training with Phuket&#39;s larvae
  2. js事件循环(event loop)
  3. DEDE修改注册邮箱时一起修改UCenter中用户邮箱的问题
  4. pat1061. Dating (20)
  5. Spring注解之@Lazy注解,源码分析和总结
  6. AngularJS实现 购物车
  7. DB2常用函数详解
  8. 【extjs6学习笔记】1.12 初始: Working with DOM
  9. python3基础09(装饰器的使用)
  10. vue组件总结(三)