摘要: BZOJ_3589_动态树_容斥原理+树链剖分 题意: 维护一棵树,支持1.子树内点权加上一个数 2.给出k条链,求路径上的点权和(重复的计算一次) (k<=5) 分析: 可以用树剖+线段树解决第一个操作 然后我们发现k非常小,可以二进制枚举 那就容斥一下转化成求几条链的交 链交求法:链顶是两条链顶 阅读全文
posted @ 2018-03-10 22:41 fcwww 阅读(130) 评论(0) 推荐(0) 编辑
摘要: BZOJ_1042_[HAOI2008]硬币购物_容斥原理+背包 题意: 硬币购物一共有4种硬币。面值分别为c1,c2,c3,c4。某人去商店买东西,去了tot次。每次带di枚ci硬币,买s i的价值的东西。请问每次有多少种付款方法。 分析: 假设没有di的限制,先跑一遍完全背包 容斥,用总方案数减 阅读全文
posted @ 2018-03-10 22:21 fcwww 阅读(162) 评论(0) 推荐(0) 编辑
摘要: BZOJ_1342_[Baltic2007]Sound静音问题_单调队列 题意: 给出n个数,求∑[ max{a[i]~a[i+m-1]} - min{a[i]~a[i+m-1]} <= c ] 分析: 滑动窗口 我们维护两个单调队列,分别存最大,最小值 代码: 阅读全文
posted @ 2018-03-10 22:05 fcwww 阅读(131) 评论(0) 推荐(0) 编辑
摘要: BZOJ_2343_[Usaco2011 Open]修剪草坪 _单调队列_DP 题意: N头牛,每头牛有一个权值,选择一些牛,要求连续的不能超过k个,求选择牛的权值和最大值 分析: 先考虑暴力DP,f[i] = f[j] + s[i]-s[j+1] (i-j-1<=k 1<=j<i) 意思是我们j+ 阅读全文
posted @ 2018-03-10 21:54 fcwww 阅读(98) 评论(0) 推荐(0) 编辑
摘要: BZOJ_2595_[Wc2008]游览计划_斯坦纳树 题意: 分析: 斯坦纳树裸题,有几个需要注意的地方 给出矩阵,不用自己建图,但枚举子集转移时会算两遍,需要减去当前点的权值 方案记录比较麻烦,两边的转移都需要记录,最后dfs找方案会比较容易理解 代码: 阅读全文
posted @ 2018-03-10 21:41 fcwww 阅读(230) 评论(0) 推荐(0) 编辑
摘要: BZOJ_5180_[Baltic2016]Cities_ 斯坦纳树 题意: 给定n个点,m条双向边的图。其中有k个点是重要的。每条边都有一定的长度。 现在要你选定一些边来构成一个图,要使得k个重要的点相互连通,求边的长度和的最小值。 分析: 斯坦纳树裸题 dis[i][j]表示关键点连通状态为i, 阅读全文
posted @ 2018-03-10 21:36 fcwww 阅读(99) 评论(0) 推荐(0) 编辑
摘要: BZOJ_4006_[JLOI2015]管道连接_斯坦纳树 题意: 小铭铭最近进入了某情报部门,该部门正在被如何建立安全的通道连接困扰。 该部门有 n 个情报站,用 1 到 n 的整数编号。给出 m 对情报站 ui;vi 和费用 wi,表示情 报站 ui 和 vi 之间可以花费 wi 单位资源建立通 阅读全文
posted @ 2018-03-10 21:27 fcwww 阅读(137) 评论(0) 推荐(0) 编辑
摘要: 51nod_1412_AVL树的种类_动态规划 题意: 平衡二叉树(AVL树),是指左右子树高度差至多为1的二叉树,并且该树的左右两个子树也均为AVL树。 现在问题来了,给定AVL树的节点个数n,求有多少种形态的AVL树恰好有n个节点。 分析: 把一个AVL树拆成根节点,左子树和右子树。 左子树和右 阅读全文
posted @ 2018-03-10 11:03 fcwww 阅读(239) 评论(0) 推荐(0) 编辑