Grundy值 当前状态的Grundy值就是除任意一步所能转移到的状态的Grundy值以外的最小非负整数, 以硬币问题一为例,可写成: Grundy值有什么用呢? 它的作用是巨大的,利用它,不光可以解决这个问题,其它许多问题都可以转换成前面介绍的Nim问题,即问题的解等于子问题的异或和。 Nim问题 ...
分类:
其他好文 时间:
2019-10-05 22:16:00
阅读次数:
93
一、DAG上的动态规划 两个问题:嵌套矩形和硬币问题 1、最长路及其字典序 如何求DAG中不固定起点的最长路经呢?设d(i)表示从节点i出发的最长路长度,那么状态转移方程就是: d(I) = max { d(j) +1 | (i,j)€ E} 其中,E是边集。最终答案就是所有d(i)的最大值。编写记 ...
分类:
其他好文 时间:
2019-10-03 00:54:20
阅读次数:
129
#include //凑硬币题,1角,2角,5角凑10元,共有多少种组合 int main(){ int a,b,c,i=0; printf("有以下组合\n"); for(a=0;a<=100;a++) for(b=0;b<=50;b++) for(c=0;c<=20;c++) if(a*1+b*... ...
分类:
其他好文 时间:
2019-10-02 22:58:25
阅读次数:
93
1、多阶段决策问题 (1)物品无限的背包 问题 比较原来的硬币问题发现,只是增加了一个重量属性,从而由原来的无权图变成了带权图,这样问题就变成了求以C为起点(终点任意)的、边权之和最大的路径,相对的 d(s)=max(d(s-v[i])+1)变为d(s)=max(d(s-v[i])+w[i])。 ( ...
分类:
其他好文 时间:
2019-10-02 22:43:23
阅读次数:
111
枚举:基于逐个尝试答案的一种文体求解策略 1. 完美立方 题目描述: 解题思路: 代码示例: 2. 生理周期 题目描述: 解题思路: 代码示例: 3. 称硬币 问题描述: 解题思路: 代码示例: RRR ...
分类:
编程语言 时间:
2019-07-23 23:49:22
阅读次数:
124
【Uva】硬币问题 Description 有n种硬币,面值分别为v1, v2, ..., vn,每种都有无限多。给定非负整数S,可以选用多少个硬币,使得面值之和恰好为S?输出硬币数目的最小值和最大值。 Description 有n种硬币,面值分别为v1, v2, ..., vn,每种都有无限多。给 ...
分类:
其他好文 时间:
2019-03-01 18:35:58
阅读次数:
297
我们在解决动态规划问题的时候,往往不会很轻松的写出递推方程。这时候我们需要考虑一下是否需要借鉴"多阶段决策问题"。 https://www.cnblogs.com/woxiaosade/p/10346052.html 上面的这道“硬币问题”的题目,如果将每一枚硬币的数目改成1,那原先的递推方程就很难 ...
分类:
其他好文 时间:
2019-02-03 18:09:26
阅读次数:
246
翻硬币 问题描述 小明正在玩一个“翻硬币”的游戏。 桌上放着排成一排的若干硬币。我们用 * 表示正面,用 o 表示反面(是小写字母,不是零)。 比如,可能情形是:**oo***oooo 如果同时翻转左边的两个硬币,则变为:oooo***oooo 现在小明的问题是:如果已知了初始状态和要达到的目标状态 ...
分类:
其他好文 时间:
2019-01-14 21:22:14
阅读次数:
785
问题 D: 小k的硬币问题 时间限制: 1 Sec 内存限制: 128 MB提交: 21 解决: 5[提交] [状态] [命题人:jsu_admin] 问题 D: 小k的硬币问题 题目描述 小k和小p一起玩一个游戏,有n堆硬币,每人轮流拿硬币,每次可以拿走1~5枚硬币,(必须拿完前一堆硬币才能开始拿 ...
分类:
其他好文 时间:
2018-12-31 19:01:35
阅读次数:
209
每次抛掷硬币正面向上和反面向上的概率是相同的 问题 1 :抛掷硬币 n 次,求连续 k 次正面向上的方案数有多少种 ? 一个比较好想的点子是直接 2^n 枚举,在这其中寻找符合要求的有多少种,复杂度爆表... 在计算连续 k 次正面向上的方案数可能并不太好算,那么就转换成 用总的方案数减去仅有连续小 ...
分类:
其他好文 时间:
2018-11-08 00:16:00
阅读次数:
251