随笔分类 -  动态规划-区间dp

摘要:1198 C Matching vs Independent Set 大意: 给定$3n$个点的无向图, 求构造$n$条边的匹配, 或$n$个点的独立集. 假设已经构造出$x$条边的匹配, 那么剩余$3n-2x$个点, 若$x<n$, 则$3n-2x\ge n$可以构造出独立集. #include 阅读全文
posted @ 2019-07-31 10:25 uid001
摘要:大意: 给定字符串, 每次删除一个回文子串, 求最少多少次删完. 阅读全文
posted @ 2019-07-16 22:07 uid001
摘要:大意: 给定矩阵, 求选出一个最大矩形, 满足矩形内每个元素互不相同. 考虑枚举上下左三个边界, 求出最大右边界的位置. 注意到固定上边界, 下边界递推时, 每个左边界对应最大右边界是单调不增的. 所以只需考虑下边界所在行的影响, 与之前的取最小即可. 用$set$求的话复杂度是$O(n^3logn 阅读全文
posted @ 2019-07-07 19:45 uid001
摘要:大意: 给定$n$个数, 任意两个$gcd>1$的数间可以连边, 求是否能构造一棵BST. 数据范围比较大, 刚开始写的$O(n^3\omega(1e9))$竟然T了..优化到$O(n^3)$才过. 思路就是先排个序, 记$L[i][j]$表示区间$[i,j]$是否能组成以$i-1$为根的$BST$ 阅读全文
posted @ 2019-07-03 23:08 uid001
摘要:J. Pangu and Stones 大意: 给定$n$堆石子, $(n\le 100)$, 每次操作任选连续的至少$L$堆至多$R$堆合并, 代价为合并石子的总数, 求合并为$1$堆的最少花费. 阅读全文
posted @ 2019-06-03 17:28 uid001
摘要:区间dp一直写的是递归版本的, 竟然超时了, 学了一下非递归的写法. 阅读全文
posted @ 2019-05-26 09:48 uid001
摘要:大意: n天, 每天m小时, 给定课程表, 每天的上课时间为第一个1到最后一个1, 一共可以逃k次课, 求最少上课时间. 每天显然是独立的, 对每天区间dp出逃$x$次课的最大减少时间, 再对$n$天dp即可. 阅读全文
posted @ 2019-05-06 18:29 uid001
摘要:大意: 给定$n$元素序列, 两个人从两端轮流拿数, 每一步假设对手上次取k, 那么只能取k或k+1, 先手第一步取1或2, 直到不能拿时停止. 先手要最大化两人数字和的差, 后手要最小化, 求最后差是多少. 显然状态数是$O(n^2)$的, 直接暴力DP 阅读全文
posted @ 2019-05-06 18:26 uid001