合集-计数

摘要:非常好题目,使我的大脑旋转(?) 还是一样,介绍思路。 既然题目让我们计算 \(f_{\max}(n)\) 的数量,则先考虑 \(f_{\max}(n)\) 的值怎样求得。容易发现,设 \(n=\prod p_i^{k_i},p_i\in \operatorname{prime}\) ,则 \(f( 阅读全文
posted @ 2023-11-15 21:54 yinhee 阅读(33) 评论(0) 推荐(0)
摘要:挺高妙的题,思维套结论。 题意:给定 \(n\) 个数,求在其中选三个不交的子集,使得其异或和相等的方案数。 三个不交的集合异或和相等 \(\Leftrightarrow\) 两两异或和为 \(0\)。 观察两个异或和为 \(0\) 的集合 \(S,T(\not=\varnothing)\) 和答案 阅读全文
posted @ 2023-12-23 18:42 yinhee 阅读(61) 评论(0) 推荐(0)
摘要:昨天刚做了这个 trick 的板子题,今天竟然又来一道。 涉及到区间 \(\min\) 和计数,一般的方法是比较难做的。所以可以从笛卡尔树和单调栈的角度入手。这题考虑单调栈,固定最小值位置后,就要计算有多少个跨过该位置,并且最小值在该位置上,还满足题目要求的区间。 解决这个问题可以考虑用单调栈处理出 阅读全文
posted @ 2023-11-08 21:56 yinhee 阅读(38) 评论(0) 推荐(0)
摘要:果然自己想出来和看题解做出来是完全不同的感觉…… 首先考虑没有不相遇的限制条件怎么做。发现这个问题就是 P1144 再加上乘法原理。 然后思考如何处理相遇的情况。容易想到枚举相遇的点和边。首先从 \(s\) 和 \(t\) 开始各跑一遍最短路,\(dis_{u,0/1},cnt_{u,0/1}\) 阅读全文
posted @ 2023-07-15 19:26 yinhee 阅读(41) 评论(0) 推荐(0)
摘要:既然是博客园的第一篇题解,那就搬点有意义的吧 题目传送门 解题思路:递推 一道很好的锻炼推式子能力的题,也是本蒟蒻第一道一遍过的紫题。 既然是递推,那就先定义一下状态:\(f_i\) 表示在执行完第 \(i\) 个操作后,可能得到的字符串数量。 很明显,我们需要分两种情况讨论:这次操作为添加字符或退 阅读全文
posted @ 2023-01-09 15:13 yinhee 阅读(153) 评论(1) 推荐(0)
摘要:感觉完全没有 *2700? 看到题,猜测 \(\max dis\) 不会很大,于是按照路径种类分类讨论一下路径 \((i,j)\)。下设 \(f_i\) 为最小质因数,并且更下面的情况不包括上面的情况。 \(\gcd(i,j)>1\) 这种显然 \(dis=1\),数量则为 \(\sum\limit 阅读全文
posted @ 2023-12-23 21:36 yinhee 阅读(24) 评论(0) 推荐(0)
摘要:其实赛时可能可以做出来的,只是打了前 6 道想下班了,有点小小遗憾。 首先问题看起来很唬人,考虑转换一下。考虑已经固定 \(m\) 条边,对于一个集合 \(S\),什么时候会不与其他点有边。容易发现,此时需要满足 \(\sum[R_i\in S]=\sum [B_j\in S]\)。记这个数为 \( 阅读全文
posted @ 2023-12-23 21:44 yinhee 阅读(49) 评论(0) 推荐(0)
摘要:whk 考试前写题解攒 rp 有用吗 仍然是讲讲想出来的过程。 首先,我们只需要关心一个联通块中有哪些点,而不用关心图的具体形态。 然后,将每个连通块看作一个点,就变成了一个无根树计数问题,但是带权值。首先想到 prufer 序列。 prufer 序列的定义:一棵无根树中,每次将编号最小的叶子取出来 阅读全文
posted @ 2024-01-07 22:07 yinhee 阅读(24) 评论(0) 推荐(0)
摘要:%赛场切了! 矩阵是不太好处理的,所以考虑从一行去推下一行。 设上一行选择了 \(p_1,p_2,\cdots,p_k\) 这几个横坐标的位置为 \(1\),分情况讨论一下这一行选择的 \(x\) 位置。 (下列结合自己画图理解) \(x\ge p_1\)。 首先发现如果选择一个 \(x\not\i 阅读全文
posted @ 2024-01-16 17:05 yinhee 阅读(27) 评论(0) 推荐(0)
摘要:orz sinsop90/bx 乌龟和 sinsop 结芬!!! 题意即数最大匹配为 \(k\) 的二叉树个数。数树问题,考虑不断加入子树 dp。但是这题是二叉树,所以可以直接每次将两个并作一个转移。 考虑怎么设计状态:子树 \(siz\) 肯定是要记的,然后最大匹配数也是。发现只记这两个不好转移, 阅读全文
posted @ 2024-03-09 10:23 yinhee 阅读(23) 评论(0) 推荐(0)
摘要:@Explodingkonjac 学长讲的做法,题解区有一篇讲这个的,但是感觉细节真的好多…… 我们先尝试构造出来一个合法序列。怎么构造呢?先枚举 \(\sum a_i=s\),然后先将序列 \(a\) 设为 \(\max(p_n,0)\) 个 \(1\) 后面接 \(\max(p_n,0)-s\) 阅读全文
posted @ 2024-03-09 10:28 yinhee 阅读(18) 评论(0) 推荐(0)
摘要:同样来自 @Explodingkonjac 学长的讲题。但是我没认真听讲,所以自己想出来了。 原本的想法是设对于每一组分别设 \(dp_{i,j}\) 为当前枚举到第 \(i\) 个位置,已经钦定了 \(j\) 个该组中的人投给自己组的方案数。转移就是枚举有多少人投给 \(i\) 然后容斥。 但是可 阅读全文
posted @ 2024-03-09 10:29 yinhee 阅读(37) 评论(0) 推荐(0)