合集-bitmask

摘要:挺高妙的题,思维套结论。 题意:给定 \(n\) 个数,求在其中选三个不交的子集,使得其异或和相等的方案数。 三个不交的集合异或和相等 \(\Leftrightarrow\) 两两异或和为 \(0\)。 观察两个异或和为 \(0\) 的集合 \(S,T(\not=\varnothing)\) 和答案 阅读全文
posted @ 2023-12-23 18:42 yinhee 阅读(63) 评论(0) 推荐(0)
摘要:偶然找到的线性基好题。 考虑 \(s=\bigoplus x_i\),则此时 \(b=s\oplus a\),问题变为 \(\max(a+(s\oplus a))\)。 然后观察 \(s\),有一个很典的想法是,\(s\) 为 \(0\) 的位上,\(a\) 如果是 \(0\) 则会产生 \(0\) 阅读全文
posted @ 2023-12-23 20:00 yinhee 阅读(33) 评论(0) 推荐(0)
摘要:感觉是那种,看到题就能猜到大概思路的题。 首先给题目条件增加限制:考虑 \(x_i\leq 7\) 的时候怎么做。这启示我们思考一个和值域相关的做法。 很容易想到一个树形 dp:设 \(dp_{u,i}\) 为在以 \(i\) 为根的子树中,\(u\) 所在连通块异或和为 \(i\) 时方案数与其他 阅读全文
posted @ 2023-12-23 21:38 yinhee 阅读(20) 评论(0) 推荐(0)
摘要:其实赛时可能可以做出来的,只是打了前 6 道想下班了,有点小小遗憾。 首先问题看起来很唬人,考虑转换一下。考虑已经固定 \(m\) 条边,对于一个集合 \(S\),什么时候会不与其他点有边。容易发现,此时需要满足 \(\sum[R_i\in S]=\sum [B_j\in S]\)。记这个数为 \( 阅读全文
posted @ 2023-12-23 21:44 yinhee 阅读(50) 评论(0) 推荐(0)
摘要:学习 SG 基础题。 首先发现每个质数之间是独立的,于是分成了若干个子游戏。 考虑如何计算每个子游戏的 SG 值。一开始没搞懂为什么可以状压,看了大佬代码才明白:对于一个质数 \(p\),\(p^k\) 对答案是否有影响,只和这个 \(k\) 是否出现有关。所以将 \(k\) 的出现状态情况成二进制 阅读全文
posted @ 2023-12-23 21:49 yinhee 阅读(45) 评论(0) 推荐(0)
摘要:大常熟另类做法。不用排序。 要求直径长度,则想到把直径这一条链拎出来处理。然后考虑其他边会接在哪里,发现树最优情况下一定是一个毛毛虫的形式。更进一步,所有边都挂在接近直径中点的点上。 然后再考虑这些不在直径中的,长度为 \(l\) 的边带来的限制,设直径为 \(d\),从每个点将直径切成两半,记其中 阅读全文
posted @ 2024-01-07 22:06 yinhee 阅读(19) 评论(0) 推荐(0)