http://codeforces.com/problemset/problem/429/B

可以参考这篇文章:

http://blog.csdn.net/pure_lady/article/details/46764839

因为有断点,所以可以预处理四个顶点到任意点的距离最大值,通过拼接得到断点后的距离

然后就是枚举断点的情况,发现断点不可能在边缘,就可以开始写了

#include <iostream>
#include <string>
#include <cstring>
#include <cstdlib>
#include <cstdio>
#include <cmath>
#include <algorithm>
#include <stack>
using namespace std; #define MEM(a,b) memset(a,b,sizeof(a))
#define pf printf
#define sf scanf
#define debug printf("!/m")
#define L 1050
#define MAX(a,b) a>b?a:b
#define blank pf("\n") int gym[L][L];
int dp1[L][L];
int dp2[L][L];
int dp3[L][L];
int dp4[L][L]; int main()
{
int n,m,i,j;
sf("%d%d",&n,&m);
for(i = ;i<=n;i++)
{
for(j = ;j<=m;j++)
sf("%d",&gym[i][j]);
} MEM(dp1,);
MEM(dp2,);
MEM(dp3,);
MEM(dp4,); //左上
for(i = ;i<=n;i++)
{
//左上
for(j = ;j<=m;j++)
{
int tmp = MAX(dp1[i-][j],dp1[i][j-]);
dp1[i][j] = tmp+gym[i][j];
}
//右上
for(j = m;j>=;j--)
{
int tmp = MAX(dp3[i-][j],dp3[i][j+]);
dp3[i][j] = tmp+gym[i][j];
}
} for(i = n;i>=;i--)
{
//左下
for(j = ;j<=m;j++)
{
int tmp = MAX(dp2[i+][j],dp2[i][j-]);
dp2[i][j] = tmp+gym[i][j];
}
//右下
for(j = m;j>=;j--)
{
int tmp = MAX(dp4[i+][j],dp4[i][j+]);
dp4[i][j] = tmp+gym[i][j];
}
} int max=; for(i = ;i<=n-;i++)
{
for(j = ;j<=m-;j++)
{
int tmp = MAX(dp1[i][j-]+dp2[i+][j]+dp3[i-][j]+dp4[i][j+],dp1[i-][j]+dp2[i][j-]+dp3[i][j+]+dp4[i+][j]);
if(tmp>max)
max = tmp;
}
} pf("%d\n",max); return ;
}
/*
3 3
1 2 3
4 5 6
7 8 9
*/

CODEFORCES 429B 动态规划的更多相关文章

  1. Codeforces 837D 动态规划

    Codeforces 837D 动态规划 传送门:https://codeforces.com/contest/837/problem/D 题意: 给你n个数,问你从这n个数中取出k个数,这k个数的乘 ...

  2. codeforces 1183H 动态规划

    codeforces 1183H 动态规划 传送门:https://codeforces.com/contest/1183/problem/H 题意: 给你一串长度为n的字符串,你需要寻找出他的最长的 ...

  3. CodeForces 429B Working out DP

    E - Working out Time Limit:2000MS     Memory Limit:262144KB     64bit IO Format:%I64d & %I64u Su ...

  4. CodeForces 429B Working out 动态规划

    Description Summer is coming! It's time for Iahub and Iahubina to work out, as they both want to loo ...

  5. Codeforces 429B Working out

    http://codeforces.com/contest/429/problem/B 题意:一个从左下到右上,一个从左上到右下,要求只相交一次,求整个路径和的最大值 思路:发现可以枚举交点,然后算到 ...

  6. Educational Codeforces Round 21 Problem E(Codeforces 808E) - 动态规划 - 贪心

    After several latest reforms many tourists are planning to visit Berland, and Berland people underst ...

  7. Codeforces 429B Working out(递推DP)

    题目链接:http://codeforces.com/problemset/problem/429/B 题目大意:两个人(假设为A,B),打算健身,有N行M列个房间,每个房间能消耗Map[i][j]的 ...

  8. Codeforces 429B Working out:dp【枚举交点】

    题目链接:http://codeforces.com/problemset/problem/429/B 题意: 给你一个n*m的网格,每个格子上有一个数字a[i][j]. 一个人从左上角走到右下角,一 ...

  9. CodeForces 366C 动态规划 转化背包思想

    这道题目昨晚比赛没做出来,昨晚隐约觉得就是个动态规划,但是没想到怎么DP,今天想了一下,突然有个点子,即局部最优子结构为 1-j,j<i,遍历i,每次从所有的1到j当中的最优解里面与当前商品进行 ...

随机推荐

  1. SYN 洪泛攻击

    在 TCP 三次握手中,服务器为了响应一个收到的 SYN,分配并初始化连接变量和缓存.然后服务器发送一个 SYNACK 进行相应,并等待来自客户的 ACK 报文段. 如果某客户不发送 ACK 来完成三 ...

  2. D02——C语言基础学PYTHON

    C语言基础学习PYTHON——基础学习D02 20180801内容纲要: 1 字符串的系列操作 2 集合 3  文件的读写 4 字符编码转换 5 小结 6 练习:三级菜单(有彩蛋) 1 字符串的系列操 ...

  3. 酱油 Noip2018颓废记

    也不知道写一些什么了 凑和着写写吧 最近十分的¥#&(^ --#%!*%¥^#$# Day -1 上午考了一场试 就\(TM\)考了60分 好不容易积攒起来的信心啊~~~~~~ 就这么垮了~~ ...

  4. jquery scrollTop()与scrollLeft()

    1.scrollLeft() scrollLeft() 方法设置或返回被选元素的水平滚动条位置. 提示:当滚动条位于最左侧时,位置是 0. 当用于返回位置时:该方法返回第一个匹配元素的滚动条的水平位置 ...

  5. SQL Full Join 的 Where条件

    SQL需求是损益视图串资产负债视图 用Excel透视表模拟出来的结果就是 用SQL查询如下: 当Where条件是左边的视图的时候 select 损益视图.年 ,损益视图.年月 ,损益视图.期间 ,损益 ...

  6. 逆向学习-Windows消息钩取

    钩子 Hook,就是钩子.偷看或截取信息时所用的手段或工具. 消息钩子 常规Windows流: 1.发生键盘输入事件时,WM_KEYDOWN消息被添加到[OS message queue]. 2.OS ...

  7. 博客主题皮肤探索-主题的本地化和ChromeCacheView使用

    还有前言 用了大佬的主题之后,有些资源是无法在暴露的接口处更改的,需要自己去css更改.但后台给的都是压缩过的,找起来比较困难,所以特意记录了这篇. 本地资源替换 侧边栏: .introduce-bo ...

  8. [转] String to Date conversion in hive - 在 Hive 中各种字符串转换成日期格式

    [From] http://bigdataprogrammers.com/string-date-conversion-hive/ Please refer below table to conver ...

  9. python3.6.4没有raw_input

    之前是一直在用Python2.7版本,2.7里面raw_input()和input个人认为区别在于raw_input()可以输入字符串和中文,而input()只接受数字,输入字符串就会报错. 现在用的 ...

  10. java面试题汇总(一)

    1.MySQL之binlog底层原理分析:https://www.jianshu.com/p/e19d9312d1b5 2.redis持久化的几种方式https://www.cnblogs.com/A ...