由于每次只能跳一阶或者两阶台阶,所以要到达每一阶台阶的方案数都是到达上一阶台阶的方案数 和到达上上阶台阶的方案数之和。 如果我们用dp[i]表示到达第i阶台阶的方案数,那么可以得到递推公式dp[i] = dp[i - 1] + dp[i - 2]; 这就是一个斐波那契数列,递推边界是dp[0] = ...
分类:
其他好文 时间:
2020-07-02 16:33:12
阅读次数:
47
完全背包问题是每件物品有无限个 完全背包问题的状态表示和01背包问题一样 dp[i][j]表示只看前i个物品,总体积<= j的最大价值 状态计算: 按照第i个物品选了多少个来分 然后综合起来就是 k是枚举的第i个物品的个数,k = 0, 1, 2,... 三层循环的二维做法 1 #include < ...
分类:
其他好文 时间:
2020-07-02 13:46:43
阅读次数:
45
传送门 以前博弈论都是靠找规律,这个题给我了新的思路,就是如果说博弈论里面的操作是对数字操作,那么可以采用递推的形式 先初始化$\sqrt(n)$的数据,然后有种杜教筛的思想,对于$n > N$时,才回去继续查找,而在求dp[n / j]时,继续查看,n / j 是否 < N 设dp[i], 如果d ...
分类:
其他好文 时间:
2020-07-01 11:03:07
阅读次数:
54
先 dp 一下,设 \(f_{i,j}\) 为 \(i\) 个数字,乘积为 \(j\) 的数列个数 那么显然有 \(f_{i\times 2,j}=\sum_{(k_0 \times k_1) \operatorname{mod} m= j}f_{i,k_0} \times f_{i,k_1}\) ...
分类:
其他好文 时间:
2020-06-30 22:48:00
阅读次数:
43
免费馅饼 (dp \(\star\)) \(SERKOI\) 最新推出了一种叫做“免费馅饼”的游戏: 游戏在一个舞台上进行。舞台的宽度为 \(W\) 格,天幕的高度为 \(H\) 格,游戏者占一格。 开始时游戏者站在舞台的正中央,手里拿着一个托盘。下图为天幕的高度为 $4$ 格时某一个时刻游戏者接馅 ...
分类:
其他好文 时间:
2020-06-30 12:42:17
阅读次数:
45
题目连接 体验++ 我们首先从确定算法着手 \(n=1e6\) 根据常识,我们可以选择的有$O(nlogn) or O(n)$ 同样根据常识$O(nlogn)的玩意儿有二分,线段树等等$ $O(n)$的玩意儿有dp,贪心 $dp$我觉得起码要开二维才行,否则弄不出来的 那么就只剩下贪心和二分线段树之 ...
分类:
其他好文 时间:
2020-06-29 13:29:24
阅读次数:
74
考场上随手构造了一组数据把自己卡掉了 然后一直都是掉线状态了。 最后发现这个东西不是subtask -1的情况不多 所以就没管无解直接莽 写题有点晚 故没调出来。。 考虑怎么做 容易想到建立AC自动机 然后不能跑到结尾节点 fail是结尾节点的也不能跑。 把那些节点抽出来就可以随便跑了 题目描述非常 ...
分类:
其他好文 时间:
2020-06-29 10:06:59
阅读次数:
53
记忆化递归: int max = 0; public int lenLongestFibSubseq(int[] A) { int[][] cache = new int[A.length][A.length]; for (int i = 0; i < A.length - 1; i++) { fo ...
分类:
其他好文 时间:
2020-06-29 00:17:42
阅读次数:
57
##P1040 加分二叉树 这是一个区间DP。 本题有一个一开始令我疑惑的点:为什么在第23行,这种解法只考虑了左子树为空的情况?后来想了想,觉得可能有两个原因。 如果某一个节点之下有两个及以上的节点的话,左右子树不为空的情况一定比有一个子树为空的情况要优。第23行代码只是针对根节点下只有一个节点的 ...
分类:
其他好文 时间:
2020-06-28 22:52:19
阅读次数:
90
bzoj4182/luoguP6326 Shopping(点分治,树上背包) bzoj它爆炸了。 luogu 题解时间 如果直接暴力背包,转移复杂度是 \(m^{2}\) 。 考虑改成点分治。 那么问题来了点分治有什么优点呢? 每次从分治中心开始搜索进行dp,保证从根到当前点都被购买至少一件。 这样 ...
分类:
其他好文 时间:
2020-06-28 22:25:24
阅读次数:
66