![](https://img-blog.csdnimg.cn/20201014180756919.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
动态规划
文章平均质量分 55
qq_43674811
这个作者很懒,什么都没留下…
展开
-
蓝桥杯测试次数(动态规划)
题目解析假设有10层楼,5个手机;假设在第6层摔了第一个手机,假如手机没摔坏,则在第7~10层继续摔剩余4个手机,且测试次数+1;假如定义F(i,j)为i层楼,j个手机状态时的测试次数;则描述上述情景是状态转移:F(10,5)=F(4,4)+1(前面的4是7~10层共有4层,后面的4是还有4个手机)。这就是动态规划中的子问题分解。下面理解最坏情况,还是上面的例子,可能手机摔坏了,则在第1~5层继续摔剩余4个手机,即F(10,5)=F(5,4)+1,所以在第六层摔手机可能摔坏也可能没摔坏,因为要是最原创 2021-04-01 22:35:09 · 806 阅读 · 1 评论 -
蓝桥杯(矩阵)(求方案种类数)(动态规划)
题目解析假如要将1~4按次序填入2*2的方格中,有如下两种方案:这里有性质:填数时上面一行的列数一定大于等于下面一行的列数。因为我们是按从小到大的顺序填数的,这样才能保证同一列中下面一行的数要大于上面一行。这里假设dp[i][j]为第一行放i个数,第二行放j个数的方案数,i的范围为0 ~ 1010,j的范围为0 ~ i。求方案数:放置第n个数在i行j列的方案数,上一步可能是放第n-1个数在i-1行j列,或是放第n-1个数在i行j-1列:dp[i][j]=dp[i-1][j]+dp[i][j-1]原创 2021-03-31 17:32:22 · 945 阅读 · 0 评论 -
01背包与完全背包
题目杭电oj2602 : bone_collector第三行是价值w,第四行是所占容量v,设定f[i][v]为前i件恰放入一个容量为v的背包可以获得的最大价值其状态转移方程为f[i][v]=max(f[i-1][v],f[i-1][v-c[i]]+w[i]) 即不选或选第i件物品具体公式如下:要想知道f[1][2],就得需要知道上图黄色标注部分,所以能够设定二重循环:for i=1..N //从1开始循环,因为i=0是初值 for v=0..V 公式AC代码:#include&l原创 2021-03-27 10:40:09 · 71 阅读 · 0 评论