51nod 1084 矩阵取数问题 V2(dp)
来源:互联网 发布:新版linux视频教程 编辑:程序博客网 时间:2024/06/05 07:52
起初我是先dp了一遍,然后去除选择过的点,然后再dp一遍。就过了四个测试数据。这样果然有问题,可以写个数据试一下,这样走出来的不是最大的结果。去看讨论,有一个评论里面说这个叫多进程dp,涨知识了。
我先写了个四维数组的,超时。。。
#include <cstdio>#include <cstring>int G[100][100];int dp[50][50][50][50];int n,m;int max(int a, int b){ return a > b ? a:b;}int main(){ scanf("%d %d",&m,&n); for(int i = 1; i <= n; ++i) for(int j = 1; j <= m; ++j) scanf("%d",&G[i][j]); for(int i = 1; i <= n; ++i) { for(int j = 1; j <= m; ++j) { for(int p = 1; p <= n; ++p) { for(int q = 1; q <= m; ++q) { dp[i][j][p][q] = max(max(max(dp[i-1][j][p-1][q],dp[i-1][j][p][q-1]),dp[i][j-1][p-1][q]),dp[i][j-1][p][q-1]) + G[i][j] + G[p][q]; if(i == p && j == q) dp[i][j][p][q] -= G[i][j]; } } } } printf("%d\n",dp[n][m][n][m]); return 0;}
然后写三维的,wa了几发就A了
#include <cstdio>#include <cstring>int G[201][201];int dp[402][201][201];int n,m;int max(int a, int b){ return a > b ? a:b;}int main(){ //freopen("in.txt","r",stdin); scanf("%d %d",&m,&n); for(int i = 1; i <= n; ++i) for(int j = 1; j <= m; ++j) scanf("%d",&G[i][j]); for(int k = 1; k <= n+m; ++k) { for(int i = 1; i <= n && k-i >= 1; ++i) { for(int p = 1; p <= n && k-p >= 1; ++p) { dp[k][i][p] = max(max(max(dp[k-1][i-1][p],dp[k-1][i-1][p-1]),dp[k-1][i][p-1]),dp[k-1][i][p]) + G[i][k-i]+G[p][k-p]; if(i == p) dp[k][i][p] -= G[i][k-i]; } } } printf("%d\n",dp[n+m][n][n]); return 0;}
0 0
- 51nod 1084 矩阵取数问题 V2(dp)
- 51nod 1084 矩阵取数问题 V2 dp
- 51nod 1084 矩阵取数问题 V2(dp)
- 51nod oj 1084 矩阵取数问题 V2 【双回路矩阵DP】
- 51nod 1084 双线程dp 矩阵取数v2
- 51nod矩阵取数问题V2
- 51Nod 1084 矩阵取数问题 V2(多进程DP模板)
- 51Nod 1084 矩阵取数问题 V2(多线程dp)
- 51nod 1084:矩阵取数问题 V2
- 51nod 1084 矩阵取数问题 V2
- 51nod-1084 矩阵取数问题 V2
- 51Nod-1084-矩阵取数问题 V2
- 【更难矩阵取数问题】51nod 1084 矩阵取数问题 V2
- 51nod 1084+1083 矩阵取数问题 dp
- 51Nod 1084 矩阵取数问题
- 51nod 1038 矩阵取数问题 (DP)
- 51Nod 1083 矩阵取数问题(简单DP)
- 【51Nod】1083 - 矩阵取数问题(dp)
- 卷积神经网络之LeNet5
- 71
- 美化复选框
- c++ 静态引用动态库通过code blocks
- C++结构体的内存大小的总结
- 51nod 1084 矩阵取数问题 V2(dp)
- Linux进程的uid和euid
- 20170515_容器list的函数
- 在centos6.5 上通过yum安装nginx和php-fpm
- 关于注解support annotations 的小记
- python实现pow操作
- sql,只看某个下级的son节点,而不是孙子、曾孙子也看
- Servlet 生命周期
- Java高新技术之交通灯管理系统(java枚举,java线程池)