Likecloud-吃、吃、吃
2017-12-04 15:16
162 查看
因为这道题食物带有权值,要求最优方案,那么DP无疑。先写一个60分的dfs
DP
#include<bits/stdc++.h> using namespace std; int a[210][210]; int n,m,sum,maxa; int niu(int b,int c){ if(b<0)return maxa; if(b==0){ if(sum>maxa)maxa=sum; } else for(int i=0;i<=2;i++){ if(b<=m&&b>0&&c+i>0&&c+i<=n){ sum+=a[b][c+i]; niu(b-1,c+i); sum-=a[b][c+i]; } } return maxa; } int main() { cin>>m>>n; for(int i=1;i<=m;i++) for(int j=1;j<=n;j++)cin>>a[i][j]; cout<<niu(m,n/2); return 0; }
DP
#include<bits/stdc++.h> using namespace std; int n,m,a[210][210]; int main() { cin>>m>>n; for (int i=1;i<=m;i++) for (int j=1;j<=n;j++) cin>>a[i][j]; for (int i=2;i<=m+1;i++) for (int j=1;j<=n;j++) a[i][j]+=max(max(a[i-1][j-1],a[i-1][j]),a[i-1][j+1]); cout<<a[m+1][n/2+1]; return 0; }
相关文章推荐
- 洛谷 1508 Likecloud-吃、吃、吃
- Likecloud—吃、吃、吃(P1508)
- P1508 Likecloud-吃、吃、吃
- WHY YOUR PRIVATE CLOUD COULD LOOK A LOT LIKE PAAS
- 【DP】洛谷 P1508 Likecloud-吃、吃、吃
- 洛谷 P1508 Likecloud-吃、吃、吃
- 洛谷P1508 Likecloud-吃、吃、吃
- P1508 Likecloud-吃、吃、吃
- 洛谷 P1508 Likecloud-吃、吃、吃
- 洛谷 P1508 Likecloud-吃、吃、吃
- 洛谷 P1508 Likecloud-吃、吃、吃
- 开源项目【LikeCloudMusic 云音】仿网易云音乐
- 洛谷P1508 Likecloud-吃、吃、吃 [2017年4月计划 动态规划10]
- 洛谷 P1508 Likecloud-吃、吃、吃
- 洛谷1508 Likecloud-吃、吃、吃
- 洛谷 1508_Likecloud-吃、吃、吃_dp
- vijos1364:Likecloud-吃吃吃
- [LUOGU]P1508 Likecloud-吃、吃、吃
- 洛谷 P1508 Likecloud-吃、吃、吃
- P1508 Likecloud-吃、吃、吃