hdu2686
来源:互联网 发布:omtp转ctia软件 编辑:程序博客网 时间:2024/06/08 08:39
Matrix
Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others)Total Submission(s): 2515 Accepted Submission(s): 1336
Every time yifenfei should to do is that choose a detour which frome the top left point to the bottom right point and than back to the top left point with the maximal values of sum integers that area of Matrix yifenfei choose. But from the top to the bottom can only choose right and down, from the bottom to the top can only choose left and up. And yifenfei can not pass the same area of the Matrix except the start and end.
Each case first line given the integer n (2<n<30)
Than n lines,each line include n positive integers.(<100)
210 35 10310 3 32 5 36 7 1051 2 3 4 52 3 4 5 63 4 5 6 74 5 6 7 85 6 7 8 9
284680
AC代码:
#include<iostream>#include<cstdio>#include<cstring>#include<algorithm>using namespace std;int data[40][40],dp[80][40][40];int Max(int a,int b,int c,int d){ return max(a,max(b,max(c,d)));}int main(){ int n; while(~scanf("%d",&n)) { int i,j,k; for(i=0;i<n;i++) for(j=0;j<n;j++) scanf("%d",&data[i][j]); memset(dp,0,sizeof(dp)); for(k=1;k<2*n-2;k++) for(i=0;i<n;i++) for(j=0;j<n;j++) { if(i==j) continue; dp[k][i][j]=Max(dp[k-1][i][j],dp[k-1][i-1][j],dp[k-1][i][j-1],dp[k-1][i-1][j-1]); dp[k][i][j]+=data[i][k-i]+data[j][k-j]; } int ans=max(dp[k-1][n-1][n-2],dp[k-1][n-2][n-1])+data[0][0]+data[n-1][n-1]; printf("%d\n",ans); } return 0;}
- hdu2686
- hdu2686 费用流
- 多线程dp hdu2686 Matrix
- hdu2686 Matrix(dp)
- hdu2686 最大费用流
- hdu2686--Matrix(拆点+最大费用)
- hdu2686 Matrix 最大费用最大流
- HDU3376 Matrix Again HDU2686 Matrix (玄学mcmf)
- HDU 3376 Matrix Again(最大费用最大流)HDU2686加强题
- easyui Multiline TextBox 获取值
- 算法概论课后习题 8.14
- 编程娱乐之俄罗斯方块
- 如何编译wxWidgets示例程序(samples目录下的程序)
- 009 Android programming 3rd Activity生命周期以及debug处理
- hdu2686
- CentOS7 彻底清除MySQL
- poj1068括号加密
- 软件中的数学计算引起的一些简单思考
- python浅拷贝和深拷贝 copy()和deepcopy()
- kotlin 基本语法(一)
- request获取路径
- 线程状态
- WebLogic下部署war包