loj 1004(dp)
来源:互联网 发布:兔子白网络 编辑:程序博客网 时间:2024/05/21 22:57
题目链接:http://acm.hust.edu.cn/vjudge/problem/viewProblem.action?id=25830‘
思路:类似与数塔问题,自底向上处理,输入的时候稍微注意一下就可以了。
1 #include<iostream> 2 #include<cstdio> 3 #include<cstring> 4 #include<algorithm> 5 using namespace std; 6 #define MAXN 222 7 #define FILL(a,b) memset(a,b,sizeof(a)) 8 9 int g[MAXN][MAXN],dp[MAXN][MAXN];10 int n;11 12 int main()13 {14 int _case,t=1;15 scanf("%d",&_case);16 while(_case--){17 scanf("%d",&n);18 FILL(g,0);19 FILL(dp,0);20 for(int i=1;i<=2*n-1;i++)21 for(int j=1;j<=2*n-1;j++){22 if(i<=n&&j<=i)scanf("%d",&g[i][j]);23 else if(i>n&&j<=2*n-i)scanf("%d",&g[i][j]);24 }25 dp[2*n-1][1]=g[2*n-1][1];26 for(int i=2*n-2;i>=1;i--)27 for(int j=1;j<=2*n-i;j++){28 if(i>=n)dp[i][j]=max(dp[i+1][j],dp[i+1][j-1])+g[i][j];29 else dp[i][j]=max(dp[i+1][j],dp[i+1][j+1])+g[i][j];30 }31 printf("Case %d: %d\n",t++,dp[1][1]);32 }33 return 0;34 }
0 0
- loj 1004(dp)
- loj 1017(dp)
- loj 1032(数位dp)
- loj 1036(dp)
- loj 1037(状压dp)
- loj 1030概率dp
- loj 1032 数位dp
- loj 1357(树形dp)
- LOJ 1017 普通dp
- LOJ 1422(区间DP)
- loj 1018(状压dp+记忆化搜索)
- loj 1038(dp求期望)
- loj 1044(dp+记忆化搜索)
- loj 1316(spfa预处理+状压dp)
- LOJ 1422 Halloween Costumes【区间DP】
- loj 1021(状压dp+记忆化搜索)
- loj 1031(区间dp+记忆化搜索)
- [暴力DP][暴力STL]SNOI2017 && LOJ#2256. 英雄联盟
- poj 3140(树形dp)
- loj 1034(最小点基)
- poj 2486( 树形dp)
- poj 1935(树形dp)
- loj 1168(Tarjan应用)
- loj 1004(dp)
- poj 2378(树形dp)
- poj 1463(树形dp)
- loj 1011(状态压缩+记忆化搜索)
- loj 1013(LCS+记忆化搜索)
- loj 1154(最大流+枚举汇点)
- loj 1017(dp)
- loj 1018(状压dp+记忆化搜索)
- loj 1021(状压dp+记忆化搜索)