Codeforces_429_B
http://codeforces.com/problemset/problem/429/B
挺简单的题,先求出四个点到每一点的最大和,然后枚举每一点,取和最大值。
注意两条路相交的点有且只有一个,这点的数值不加。
#include<iostream>
#include<algorithm>
using namespace std;
int a[][];
int s1[][] = {},e1[][] = {},s2[][] = {},e2[][] = {};
int main()
{
int n,m;
cin >> n >> m;
for(int i = ;i <= n;i++)
{
for(int j = ;j <= m;j++) cin >> a[i][j];
}
s1[][] = a[][];
s2[n][] = a[n][];
e1[n][m] = a[n][m];
e2[][m] = a[][m];
for(int i = ;i <= n;i++)
{
s1[i][] += a[i][]+s1[i-][];
e2[i][m] += a[i][m]+e2[i-][m];
}
for(int i = n-;i >= ;i--)
{
s2[i][] += a[i][]+s2[i+][];
e1[i][m] += a[i][m]+e1[i+][m];
}
for(int i = ;i <= m;i++)
{
s1[][i] += a[][i]+s1[][i-];
s2[n][i] += a[n][i]+s2[n][i-];
}
for(int i = m-;i >= ;i--)
{
e2[][i] += a[][i]+e2[][i+];
e1[n][i] += a[n][i]+e1[n][i+];
}
for(int i = ;i <= n;i++)
{
for(int j = ;j <= m;j++)
{
s1[i][j] = max(s1[i-][j]+a[i][j],s1[i][j-]+a[i][j]);
}
for(int j = m-;j >= ;j--)
{
e2[i][j] = max(e2[i-][j]+a[i][j],e2[i][j+]+a[i][j]);
}
}
for(int i = n-;i >= ;i--)
{
for(int j = ;j <= m;j++)
{
s2[i][j] = max(s2[i][j-]+a[i][j],s2[i+][j]+a[i][j]);
}
for(int j = m-;j >= ;j--)
{
e1[i][j] = max(e1[i][j+]+a[i][j],e1[i+][j]+a[i][j]);
}
}
int ans = ;
for(int i = ;i < n;i++)
{
for(int j = ;j < m;j++)
{
ans = max(ans,s1[i-][j]+s2[i][j-]+e1[i+][j]+e2[i][j+]);
ans = max(ans,s1[i][j-]+s2[i+][j]+e1[i][j+]+e2[i-][j]);
}
}
cout << ans << endl;
return ; }
Codeforces_429_B的更多相关文章
随机推荐
- Java工作流引擎节点接收人设置“按自定义SQL计算”系列讲解
关键字: 驰骋工作流程快速开发平台 工作流程管理系统 工作流引擎 asp.net工作流引擎 java工作流引擎. 开发者表单 拖拽式表单 工作流系统CCBPM节点访问规则接收人规则 适配数据库: o ...
- opencv利用svm训练
]]]]]])rand2 = np.array([[]]]]]])label = np.array([[]]]]]]]]]]])data = np.vstack((rand1]]])pt_data = ...
- Oozie任务调度框架详解及使用简介(一)
摘要:个人最近一段时间一直在使用oozie,从刚开始的各种别扭到现在越来越觉得有意思的情况下,想整理一下关于oozie的认知,整理出来一个oozie系列,本来市面上关于oozie的资料就比较少,希望写 ...
- rest实践1
REST 即表述性状态传递,是一种针对网络应用的设计和开发,可以降低开发的复杂性.是主流的Web服务实现方案. 表述性状态转移是一组构架约束条件和原则,满足这些约束条件和原则的应用程序和设计就是RES ...
- 状态压缩 hdu #10
You are playing CSGO. There are n Main Weapons and m Secondary Weapons in CSGO. You can only choose ...
- OpenGLES思维导图
两本书到头来就只剩下了这三张图了吧.想要原图:https://github.com/wangwangla/biji/blob/master/%E8%AF%BB%E4%B9%A6%E7%AC%94%E8 ...
- hive 动态分区
非常重要的动态分区属性: hive.exec.dynamic.partition 是否启动动态分区.false(不开启) true(开启)默认是 false hive.exec.dynamic.pa ...
- 大厂面试中三次握手延伸出来n连发你受得了?
目录 一.这是一次有故事的对话 二.三次握手的客户端服务端状态 1 先画个图看看有哪些状态 2 tcp协议内容解析 3 通过工具wireshark来验证我们所述 三.说下Linux网络编程常用API ...
- 把 CPU “玩”起来
前言 从开始学习编程之后,就渐渐痴迷于技术,平时遇到购书满减活动时就忍不住买一堆书.前两天闲着无聊,翻开了去年买的<编程之美>,目录里的“让 CPU 占用率听你指挥”吸引力我的眼球.这一年 ...
- Java常见问题汇总
1.String,StringBuffer,StringBulider的区别及应用场景 2.Servlet生命周期 3.向上转型与向下转型 4.Java的多态性 5.重写和重载的区别 6.深拷贝和浅拷 ...