动态规划上机习题.ppt

动态规划上机习题.ppt

动态规划上机习题 臧家瑞 地板覆盖(简) 用2*1的地板块覆盖3*n的地板有多少种方案? 如下图是一个覆盖的例子: 。。。。。。 上下翻转也可以——乘以2 动态转移方程 石子游戏 现有4堆石子,两个人轮流取石子,他们有n种可能的取法,取法表示从第1堆取A1个石子,从第2堆中取B1个,第3堆取C1个,第4堆取D1个.如果取的时候某一堆的石子数比所要取的石子数要少,则这种取法是不可行的.取到最后没有可行取法的人就算输了. 现给出4堆石子的石子数目以及n种取法,请问如果两个人都采用最优取法,先取的人是赢还是输. 数据结构 每一种石子数为一个状态state,每个状态都记录先手回合的先手输赢offen和后手回合的先手输赢defen. struct state { bool offen; //先手回合时,1:先手赢, 0:先手输 boot defen; //后手回合时,1:先手赢, 0:先手输 } struct state st[31][31][31][31];//所有状态 记录n种取法的数组 struct remove { int a, b, c, d; } rm[10]; 动态转移方程 初始化 多边形游戏 多边形游戏是一种在一个具有n个顶点的多边形上进行的游戏。如图1是一个n=4对应多边形,每个顶点上都有一个整数,每条边都有一个运算符+或者*,所有边按从1到n进行编号。

文档评论(0)

1亿VIP精品文档

相关文档