随笔分类 - 动态规划
摘要:题目链接 Black Nodes in Subgraphs 题目意思就是在一棵树中所有点标记为两种颜色(黑和白) 然后询问是否存在大小为X恰好有Y个黑点的连通块 这题我们可以用树型背包的方法 设$f[i][j][0]$为以$i$为根的子树中大小为$j$的连通块的黑点数目的最小值,该连通块必须经过$i
阅读全文
摘要:题目链接 Sandy and Nuts 题意大概就是给出限制条件求出在该限制条件下树的种数。
阅读全文
摘要:题目链接 Tree $dp[x][i]$表示以x为根的子树中x所属的连通快大小为i的时候 答案最大值 用$dp[x][j]$ * $dp[y][k]$ 来更新$dp[x][j + k]$。 (听高手说这类题的套路其实都差不多) 因为这题输出数据会很大所以用Java…… QAQ
阅读全文
摘要:题目链接 Coloring Brackets 考虑树型DP。(我参考了Q巨的代码还是略不理解……) 首先在序列的最外面加一对括号。预处理出DFS树。 每个点有9中状态。假设0位不涂色,1为涂红色,2为涂蓝色。 0:0 0 1:0 1 2:0 2 3:1 0 4:1 1 5:1 2 6:2 0 7:2
阅读全文
摘要:题目链接 Xors on Segments 预处理出$x[i]$ $=$ $1$ $xor$ $2$ $xor$ $3$ $xor$ $……$ $xor$ $i$ 话说这题$O(n^{2})$居然能过 先对询问离线。 然后$dp[i]$表示以$a[i]$为开头的所有连续序列中最大答案。 然后依次处理
阅读全文
摘要:题目链接 Eighty seven 背包(用bitset预处理)然后对于每个询问O(1)回答即可。 预处理的时候背包。
阅读全文
摘要:题目链接 Bear and Tree Jumps 考虑树形DP。$c(i, j)$表示$i$最少加上多少后能被$j$整除。 在这里我们要算出所有$c(i, k)$的和。 其中$i$代表每个点对的距离,$k$为输入的$k$值。 $f[i][j]$表示以$i$为根结点,深度对$k$取模为$j$的点的个数
阅读全文
摘要:题目链接 [Ahoi2009]chess 中国象棋 设$f[i][j][k]$为前i行,$j$列放了1个棋子,$k$列放了2个棋子的方案数 分6种情况讨论,依次状态转移。
阅读全文
摘要:题目链接 Zuma 区间DP……好奇妙啊……参考了别人的代码……现在都有点糊涂……
阅读全文
摘要:题目链接 Mahmoud and a xor trip 树形DP。先考虑每个点到他本身的距离和,再算所有点两两距离和。 做的时候考虑二进制拆位即可。
阅读全文
摘要:题目链接 Phillip and Trains 考虑相对位移。 每一轮人向右移动一格,再在竖直方向上移动0~1格,列车再向左移动两格。 这个过程相当于每一轮人向右移动一格,再在竖直方向上移动0~1格,然后人再向右移动两格。 然后就可以进行状态转移了。 f[i][j]表示能否走到i行j列的位置。最后在
阅读全文
摘要:题目链接 飞扬的小鸟 考场的70分暴力(实际只有50分因为数组开小了……) 考场代码(数组大小已修改) 然后回过来想正解。 其实我们把很多时间都浪费在这里了: 其实这一步可以转过来直接利用完全背包的性质优化一下。转移只要O(1)就可以了。 这道题细节还是很多的,比较容易写挂。 正解:
阅读全文
摘要:题目链接 HOTELS 依次枚举每个点,以该点为中心扩展。 每次枚举的时候,从该点的儿子依次出发,搜完一个儿子所有的点之后进行答案统计。 这里用了一个小trick。
阅读全文
摘要:题目链接 Hanoi Factory 很容易想到这是一个DAG模型,那么状态转移方程就出来了。 但是排序的时候有个小细节:b相同时看a的值。 因为按照惯例,堆塔的时候肯定是内半径大的在下面。 因为N有1e5,那么DP的时候用线段树优化一下,就可以了。
阅读全文
摘要:题目链接 Distance in Tree $k <= 500$ 这个条件十分重要。 设$f[i][j]$为以$i$为子树,所有后代中相对深度为$j$的结点个数。 状态转移的时候,一个结点的信息由他的儿子转移过来。 那么一边进行状态转移,一边统计答案即可。
阅读全文
摘要:D. Chloe and pleasant prizes time limit per test 2 seconds memory limit per test 256 megabytes input standard input output standard output Generous sp
阅读全文
摘要:题目链接 Treats for the Cows 直接区间DP就好了,用记忆化搜索是很方便的。
阅读全文
摘要:4300: 绝世好题 Description 给定一个长度为$n$的数列$ai$,求$ai$的子序列$bi$的最长长度,满足bi&bi-1!=0(2<=i<=len) 给定一个长度为$n$的数列$ai$,求$ai$的子序列$bi$的最长长度,满足bi&bi-1!=0(2<=i<=len) Input
阅读全文
摘要:HDU1398 题意:把一个整数分拆成1、4、9、16、……、256、289(注意:只到289)这17个完全平方数的和,有几种方法。 解法不用说自然是DP,因为搜索显然超时。 (这样的题我一般不敢开int,怕爆……) HDU1028 自然数无序拆分 恩,经典的DP题 二维的方法……但是我以前用一维的
阅读全文
摘要:题目链接: http://acm.hdu.edu.cn/showproblem.php?pid=5074 题目大意:给定一个长度为n的序列c[i],该序列为一个乐谱。我们的任务是要给这个序列补上音符。c[i]的数值有两种情况:-1、不是-1。不是-1的这个位置的音符已经确定,不能再更改。是-1的这个
阅读全文

浙公网安备 33010602011771号