题目描述 Description

这天是rabbit 的生日前夕,Xth 来到花店,要给他的rabbit 买玫瑰花,为了保证质
量,他跟花店老板——小菜儿同学要求自己到花田采摘。小菜儿灰常希望早日见到
暖熊(xth 儿子的小名),于是他决定帮忙。
小菜儿告诉xth,花田是一个n ∗ m的矩形区域,里面有红玫瑰和黑玫瑰两种玫瑰。
Xth 探明了每一块小区域内红玫瑰和黑玫瑰的种植量,并且还在花田的北边和西边
分别设置了红玫瑰和黑玫瑰的收集站(地图上上北下南左西右东)。你的任务是设
计一个运输线系统,使得运送的红玫瑰和黑玫瑰的总量最多。
运输线有两种,一种是东西向,一种是南北向。在一个格子内你能建造一种运输线,
但不能两种都建。如果两个同类型运输线首尾相接,它们就可以被连接起来。
另外,这些玫瑰都十分不稳定,因此它们在运送过程中都不能拐弯。这就意味着如
果某个格子上建有南北向运输线,但是它北边的格子建有东西向运输线。那么这条
南北向运输线内运送的任何东西都将丢失。进一步地,运到红玫瑰收集点的黑玫瑰
会丢失,运到黑玫瑰收集点的红玫瑰也会丢失。

输入描述 Input Description

第一行包含两个整数n和m,表示花田大小。
以下n行,每行m个整数,其中第i行
第j个整数g[ i ,j ] 描述各个格子上的黑玫瑰数量。接下来以类似的矩阵表示各个格
子上的红玫瑰数量。

输出描述 Output Description

仅一个整数, 表示最多可以采集到的红玫瑰和黑玫瑰的总量。

样例输入 Sample Input

4 4 
0 0 10 9 
1 3 10 0 
4 2 1 3 
1 1 20 0 
10 0 0 0 
1 1 1 30 
0 0 5 5 
5 10 10 10

样例输出 Sample Output

98

数据范围及提示 Data Size & Hint

对于30%的数据: 0 ≤
n, m ≤ 100;
对于100%的数据: 0 ≤ n,m ≤ 1000;
0 ≤ g[ i,j ] ≤ 1000.

/*
由于管道不能交叉,所以如果想向北运,那么它南边的管道都要向北运,向西运也同理。
用a、b数组做个前缀和,转移时f[i][j]为它向北运和向西运的情况取大。
*/
#include<cstdio>
#include<iostream>
#define M 1010
using namespace std;
int a[M][M],b[M][M],f[M][M],n,m;
int main()
{
scanf("%d%d",&n,&m);
for(int i=;i<=n;i++)
for(int j=;j<=m;j++)
scanf("%d",&b[i][j]);
for(int i=;i<=n;i++)
for(int j=;j<=m;j++)
scanf("%d",&a[i][j]);
for(int i=;i<=n;i++)
for(int j=;j<=m;j++)
a[i][j]+=a[i-][j];
for(int i=;i<=n;i++)
for(int j=;j<=m;j++)
b[i][j]+=b[i][j-];
for(int i=;i<=n;i++)
for(int j=;j<=m;j++)
f[i][j]=max(f[i][j-]+a[i][j],f[i-][j]+b[i][j]);//保证不交叉
printf("%d",f[n][m]);
return ;
}

xth 的玫瑰花(codevs 1360)的更多相关文章

  1. 1360 xth 的玫瑰花

    1360 xth 的玫瑰花  时间限制: 1 s  空间限制: 128000 KB  题目等级 : 钻石 Diamond 题解       题目描述 Description 这天是rabbit 的生日 ...

  2. codevs 1360 xth砍树 线段树不能再水的题了

    连标记都不用打.. #include<cstdio> #include<cstring> #include<algorithm> using namespace s ...

  3. xth 砍树(codevs 1369)

    题目描述 Description 在一个凉爽的夏夜,xth 和 rabbit 来到花园里砍树.为啥米要砍树呢?是这样滴,小菜儿的儿子窄森要出生了.Xth这个做伯伯的自然要做点什么.于是他决定带着rab ...

  4. xth的旅行(codevs 1450)

    题目描述 Description 毕业了,Xth很高兴,因为他要和他的 rabbit 去双人旅行了.他们来到了水城威尼斯.众所周知(⊙﹏⊙b汗),这里的水路交通很发达,所以 xth 和 rabbit ...

  5. codevs 1450 xth 的旅行

     时间限制: 1 s  空间限制: 128000 KB  题目等级 : 钻石 Diamond 题解  查看运行结果     题目描述 Description 毕业了,Xth很高兴,因为他要和他的 ra ...

  6. xth的第 12 枚硬币(codevs 1366)

    题目描述 Description 传说 xth 曾经拥有11枚完全相同硬币(你懂得),不过今年呢,rabbit又送了他一 枚硬币.这枚硬币和其他硬币外观相同,只有重量不同,或轻或重.Xth 一不小心, ...

  7. codevs 3289 花匠

    题目:codevs 3289 花匠 链接:http://codevs.cn/problem/3289/ 这道题有点像最长上升序列,但这里不是上升,是最长"波浪"子序列.用动态规划可 ...

  8. codevs 1082 线段树练习 3(区间维护)

    codevs 1082 线段树练习 3  时间限制: 3 s  空间限制: 128000 KB  题目等级 : 大师 Master 题目描述 Description 给你N个数,有两种操作: 1:给区 ...

  9. codevs 1285 二叉查找树STL基本用法

    C++STL库的set就是一个二叉查找树,并且支持结构体. 在写结构体式的二叉查找树时,需要在结构体里面定义操作符 < ,因为需要比较. set经常会用到迭代器,这里说明一下迭代器:可以类似的把 ...

随机推荐

  1. yum -y --downloadonly --downloaddir=/root/ruiy update

    依赖关系解决 ============================================================================================= ...

  2. 异常java.lang.UnsupportedOperationException: The application must supply JDBC connections

    转自:https://blog.csdn.net/q952420873/article/details/81355586 先上图  根据这个错误溯源 于是 我来到了数据库连接部分的代码 ,发现多了一个 ...

  3. [Swift通天遁地]八、媒体与动画-(3)实现视频播放的水印、Overlay、暂停时插入广告等效果

    ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★➤微信公众号:山青咏芝(shanqingyongzhi)➤博客园地址:山青咏芝(https://www.cnblogs. ...

  4. 使用 typescript 开发 Vue

    基础配置: 1. 准备一个使用 vue-cli 生成的项目 2. 使用 npm 一建安装基础配置 npm i -S @types/node typescript vue-class-component ...

  5. 对于Mobile模块化的概念认知(小白)

    最近刚刚学习了Mobile的一些基础知识,把它整理一下方便自己的学习 那什么是Mobile呢? 自己的理解是将一个项目中共同的部分抽出来,这样就形成了Mobile模块. 为什么要使用Mobile呢? ...

  6. 爬虫—Ajax数据爬取

    一.什么是Ajax 有时候我们使用浏览器查看页面正常显示的数据与使用requests抓取页面得到的数据不一致,这是因为requests获取的是原始的HTML文档,而浏览器中的页面是经过JavaScri ...

  7. 修路方案 Kruskal 之 次小生成树

    次小生成树 : Kruskal 是先求出来  最小生成树 , 并且记录下来所用到的的边 , 然后再求每次都 去掉最小生成树中的一个边 , 这样求最小生成树 , 然后看能不能得到 和原来最小生成树一样的 ...

  8. Android布局属性LayoutParams的理解

    在一次笔试中搞混LayoutParams的用法,特来总结一番: LayoutParams继承于Android.View.ViewGroup.LayoutParams.LayoutParams相当于一个 ...

  9. [python] ThreadPoolExecutor线程池

    初识 Python中已经有了threading模块,为什么还需要线程池呢,线程池又是什么东西呢?在介绍线程同步的信号量机制的时候,举得例子是爬虫的例子,需要控制同时爬取的线程数,例子中创建了20个线程 ...

  10. Codeforces 903G 巧妙的线段树

    思路: 巧妙的线段树 想方法将网络流往数据结构方向转化 http://www.cnblogs.com/yyf0309/p/8724558.html //By SiriusRen #include &l ...