随笔分类 -  # 堆

摘要:题意 在一棵有根树选择某些节点使得在它们的费用和在不超过某个值的条件下选择节点的个数与它们的某个公共祖先的领导力的乘积最大。 解析 即使最开始的时候先想的是贪心,在手玩一下之后我们也可以很自然的想到树形dp。 那么我们考虑怎么将子节点的信息转移到当前节点上。 我们设 \(dp_x\) 表示在以 \( 阅读全文
posted @ 2021-09-09 14:22 init-神眷の樱花 阅读(49) 评论(0) 推荐(1)
摘要:题面 异或粽子 题解 将题意转化一下就是,对于一个大小为 \(n\) 的数组,求出前 \(k\) 大的不重复的区间异或和的和。 我们记录一下区间前缀异或和。那么一个区间的异或和就可以表示为 \(sum[r]\ xor\ sum[l - 1]\)。 那么我们要求的就是形如这样的最大的 \(k\) 对异 阅读全文
posted @ 2021-07-28 22:22 init-神眷の樱花 阅读(45) 评论(0) 推荐(0)
摘要:题面 Monkey King 题解 思路很显然,我们对每个猴子和它的朋友的集合维护一个堆,因为每次取出的是最大值,所以我们维护一个大根堆,因为打完架后,猴子互相认识,对应的是合并这两个堆,所以我们要维护的是可合并式堆,于是可以用很好写的左偏树进行维护。 对于削弱操作,直接先把堆顶的猴子取出来,删除这 阅读全文
posted @ 2021-07-28 21:56 init-神眷の樱花 阅读(81) 评论(0) 推荐(0)