乌龟棋
来源:互联网 发布:编程语言历史发展 编辑:程序博客网 时间:2024/06/12 01:37
这一道题是一道动态规划的题。但是这道题的转移方程要想到还是有一点点难度的,一般都会想到5维的dp,但是这道题用5维明显会超时,所以再推一下会发现只用4维就可以了。
接下来就直接上代码了
#include<cstdio>#include<cstdlib>#include<iostream>using namespace std;int f[50][50][50][50],a[500],b[6];int main() { int n,p,m; cin>>n>>m; for(int i=1; i<=n; i++) cin>>a[i]; f[0][0][0][0]=a[1]; for(int j=1; j<=m; j++) { cin>>p; b[p]++; } for(int i=0; i<=b[1]; i++) for(int j=0; j<=b[2]; j++) for(int z=0; z<=b[3]; z++) for(int k=0; k<=b[4]; k++) { int l=i*1+j*2+z*3+k*4+1,mx=0; if (i) mx=max(f[i-1][j][z][k],mx); if (j) mx=max(f[i][j-1][z][k],mx); if (z) mx=max(f[i][j][z-1][k],mx); if (k) mx=max(f[i][j][z][k-1],mx); f[i][j][z][k]=mx+a[l]; } cout<<f[b[1]][b[2]][b[3]][b[4]];}
阅读全文
0 0
- 乌龟棋
- 乌龟棋
- 乌龟棋
- 乌龟棋
- 乌龟棋
- 乌龟棋
- 乌龟棋
- 乌龟棋
- 乌龟棋
- 乌龟棋
- 乌龟棋
- 乌龟棋
- 乌龟棋
- NOIP-2010 乌龟棋
- wikioi 1068 乌龟棋
- wikioi 1068 乌龟棋
- HOJ 3140 乌龟棋
- NOIP2010乌龟棋
- 338. Counting Bits
- 7-23 币值转换(20 分)
- 1029. Median (25)
- 字符串的substring和substr方法的区别
- 周中训练笔记+Just a Hook(9.14)
- 乌龟棋
- char指针和数组的相关使用规则
- 继承和接口
- selenium+python 封装截图类
- 修改Maven仓库地址
- 正阅读微信小说分销系统-视频教程-2.渠道商-公众号配置-菜单生成
- UE4:Spline生成人流的两种方式。
- 1058. A+B in Hogwarts (20)
- 编码相关整理