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的更多相关文章

随机推荐

  1. 03_input type="number" 输入允许小数点后两位

    <input type="number" min="0" max="100" step="0.01"/> & ...

  2. Python 线性回归(Linear Regression) 基本理解

    背景 学习 Linear Regression in Python – Real Python,对线性回归理论上的理解做个回顾,文章是前天读完,今天凭着记忆和理解写一遍,再回温更正. 线性回归(Lin ...

  3. Web 3D是否需要WebAssembly?

    大家好,本文讨论了Web 3D是否需要WebAssembly,结论是: 对于使用原生3D技术的程序员,需要: 对于使用Javascript语言的前端程序员,不需要,有其它方法可以达到接近WebAssd ...

  4. ILSpy反编译工具之C#反汇编

    1.下载ILspy工具 https://github.com/icsharpcode/ILSpy#ilspy------- 注意: ILspy需要在电脑上安装.NET Framework 4.0.   ...

  5. windows创建git并连结github

    1.下载跟自己系统相对应的git版本 2.默认安装 3.绑定用户 git config --global user.name ""git config --global user. ...

  6. 在浏览器窗口内移动的div

    ------------今天研究了一个最简单的屏保效果----------- 效果图如下:效果很神奇,就是这个div在浏览器窗口不断的灵活移动 代码却很简单 <!DOCTYPE html> ...

  7. 一些常用查询SQL语句以及显示格式

    1.查询当前年.月.周相关时间 1.1.查询当前年份 SELECT TO_CHAR(SYSDATE,'YYYY') AS YEAR FROM DUAL--查询当前年份 SELECT TO_CHAR(S ...

  8. 【PCIE-2】---PCIE配置空间及访问方式简介

    对新手来说,第一步了解PCIE的相关基本概念,第二步了解PCIE配置空间,第三步深入研究PCIE设备枚举方式.本章主要总结第二步的PCIE配置空间 按照国际惯例,先提问题: 1. 什么是PCIE的配置 ...

  9. 阿望教你用vue写扫雷(超详细哦)

    前言 话说阿望还在大学时,某一天寝室突然停网了,于是和室友两人不约而同地打开了扫雷,比相同难度下谁更快找出全部的雷,玩得不亦乐乎,就这样,扫雷伴我们度过了断网的一周,是整整一周啊,不用上课的那种,可想 ...

  10. margin和 padding 以及 float :left和float :right的介绍

    1.margin和padding的介绍 margin是外边距,padding是内边距,用CSS时首先要做的就是把所有标签的margin和padding清空.这样更容易控制布局和兼容浏览器. p li等 ...