NYOJ 61 传纸条(一)
双线DP
#include<iostream>
#include<algorithm>
#include<ctype.h>
#include<string>
#include<string.h>
#include<vector>
#include<queue>
using namespace std;
int dp[][][]; //压缩空间 dp[x1+y1][x1][x2];
//已知x1+y1 、x1和x2的值 ,结合x1 + y1 = x2 + y2 可以确定x1,y1,x2,y2四个值 int mp[][];
int max(int a,int b,int c,int d)
{
if(a>=b && a>=c && a>=d) return a;
else if(b>=a && b>=c && b>=d) return b;
else if(c>=a && c>=b && c>=d) return c;
else if(d>=a && d>=c && d>=b) return d;
}
int main()
{
int t;
cin>>t;
while(t--)
{
int m,n;
cin>>m>>n;
for(int i=;i<=m;i++)
{
for(int j=;j<=n;j++)
{
cin>>mp[i][j];
}
}
int k,x1,y1,x2,y2;
for(k=;k<=m+n;k++)
for(x1=;x1<=m;x1++)
for(x2=;x2<=m;x2++)
dp[k][x1][x2] = ;
for(k=;k<=m+n;k++)
{
for(x1=;x1<=m;x1++) //(x,y)看作 其中一个坐标,结合k可求出对应的另一个点 ,遍历k和所有的(x,y) 就可以得到dp[k][x][y]的所有值
{
for(x2=;x2<=m;x2++)
{
y1 = k - x1;
y2 = k - x2; if( y1<=n && y2<=n && y1>= && y2>=) //不越界
{
if(x1 != x2 && y1 != y2) //不相交
{
int v1 = dp[k-][x1-][x2-] + mp[x1][y1] + mp[x2][y2];
int v2 = dp[k-][x1][x2] + mp[x1][y1] + mp[x2][y2];
int v3 = dp[k-][x1-][x2] + mp[x1][y1] + mp[x2][y2];
int v4 = dp[k-][x1][x2-] + mp[x1][y1] + mp[x2][y2];
dp[k][x1][x2] = max(v1,v2,v3,v4);
}
}
}
}
} cout<<dp[m+n-][m][m-]<<endl; } return ;
}
NYOJ 61 传纸条(一)的更多相关文章
- nyoj 61 传纸条
点击打开链接 传纸条(一) 时间限制:2000 ms | 内存限制:65535 KB 难度:5 描述 小渊和小轩是好朋友也是同班同学,他们在一起总有谈不完的话题.一次素质拓展活动中,班上同学安排做 ...
- nyoj 61——传纸条(一)——————【双线dp】
传纸条(一) 时间限制:2000 ms | 内存限制:65535 KB 难度:5 描述 小渊和小轩是好朋友也是同班同学,他们在一起总有谈不完的话题.一次素质拓展活动中,班上同学安排做成一个m行 ...
- NYOJ 61传纸条(一) 双线程DP问题
http://www.cnblogs.com/HpuAcmer/archive/2012/05/06/2486591.html 题目链接:http://acm.nyist.net/JudgeOnlin ...
- nyoj 题目61 传纸条
传纸条(一) 时间限制:2000 ms | 内存限制:65535 KB 难度:5 描述 小渊和小轩是好朋友也是同班同学,他们在一起总有谈不完的话题.一次素质拓展活动中,班上同学安排做成一个m行 ...
- nyist 61 传纸条 nyist 712 探 寻 宝 藏(双线程dp问题)
http://acm.nyist.net/JudgeOnline/problem.php?pid=61 http://acm.nyist.net/JudgeOnline/problem.php?pid ...
- 南阳OJ 61 传纸条(一)
传纸条(一) 时间限制:2000 ms | 内存限制:65535 KB 难度:5 描述 小渊和小轩是好朋友也是同班同学,他们在一起总有谈不完的话题.一次素质拓展活动中,班上同学安排做成一个m行 ...
- tyvj1011 传纸条
背景 NOIP2008复赛提高组第三题 描述 小渊和小轩是好朋友也是同班同学,他们在一起总有谈不完的话题.一次素质拓展活动中,班上同学安排做成一个m行n列的矩阵,而小渊和小轩被安排在矩阵对角线的两端, ...
- NOIP2008 传纸条
题目描述 小渊和小轩是好朋友也是同班同学,他们在一起总有谈不完的话题.一次素质拓展活动中,班上同学安排做成一个m行n列的矩阵,而小渊和小轩被安排在矩阵对角线的两端,因此,他们就无法直接交谈了.幸运的是 ...
- NOIP2008传纸条[DP]
题目描述 小渊和小轩是好朋友也是同班同学,他们在一起总有谈不完的话题.一次素质拓展活动中,班上同学安排做成一个m行n列的矩阵,而小渊和小轩被安排在矩阵对角线的两端,因此,他们就无法直接交谈了.幸运的是 ...
随机推荐
- 一款Redis客户端,可以作为Redis Desktop manager的有效补充或替代
一.由来 对于redis客户端,我和大多数人一样,都是用Redis Desktop Manager. 但我发现个问题,我的版本是0.9.1.771. 我这个版本有个问题,就是如果value太长的话,不 ...
- redis(二)--用Redis作MySQL数据库缓存
用Redis作MySQL数据库缓存,必须解决2个问题.首先,应该确定用何种数据结构存储来自mysql的数据:在确定数据结构之后,还要考虑用什么标识作为该数据结构的键. 直观上看,Mysql中的数据都是 ...
- simulation vs emulation
Hardware emulation, the use of special purpose hardware to emulate the behavior of a yet-to-be-built ...
- mysql 登录远程数据库 失败
配置mysql结束,本机能够成功登录和查询. 但其他主机使用mysql -h*** -P3306 -u*** -p***,登录数据库. centos7上反馈:ERROR 2003 (HY000): C ...
- Thinkphp框架 表单自动验证登录注册 ajax自动验证登录注册
说明:这里没练习静态自动验证:如果用到静态验证首先自定义一个控制器,再在Model文件夹里创建一个NiHaoModel.php 类 NiHao是自定义的,前缀可以随意,但是一定要用驼峰法(首字母大写 ...
- CH #46A - 磁力块 - [分块]
题目链接:传送门 描述在一片广袤无垠的原野上,散落着N块磁石.每个磁石的性质可以用一个五元组(x,y,m,p,r)描述,其中x,y表示其坐标,m是磁石的质量,p是磁力,r是吸引半径.若磁石A与磁石B的 ...
- [No0000146]深入浅出图解C#堆与栈 C# Heap(ing) VS Stack(ing)理解堆与栈3/4
前言 虽然在.Net Framework 中我们不必考虑内在管理和垃圾回收(GC),但是为了优化应用程序性能我们始终需要了解内存管理和垃圾回收(GC).另外,了解内存管理可以帮助我们理解在每一个程 ...
- DHCP协议和PXE
在学习IP地址基本概念之后,需要了解到如果需要和其他机器通讯,我们就需要一个通讯地址,我们需要给网卡配置一个地址. 如何配置 IP 地址? 可以用命令行自己配置一个地址.可以使用 ifconfig,也 ...
- Linux上mount 挂载windows共享文件权限问题
在服务器部署的时候需要把文件夹设置在windows的共享文件上.在使用mount命令挂载到linux上后.文件路径和文件都是可以访问,但是不能写入,导致系统在上传文件的时候提示“权限不够,没有写权限” ...
- [daily][CentOS][SELinux]用key免登陆不成功,原来是SElinux在搞事情
为了提高效率,一般情况下,会把公钥放到sshd主机的 $HOME/.ssh/authorized_keys 文件内. 把私钥放在client的 $HOME/.ssh/ 下. 然后就可以免密登录了.然而 ...