随笔分类 - 容斥、反演
摘要:传送门 好妙的题啊 首先容易想到简单容斥,统计合法方案数可以考虑总方案数减去不合法方案数 那么先考虑如何判断一个串是否合法,但是直接判断好像很不好搞 这时候就需要一些 $magic$ 了,把所有位置下标为奇数的字符 $\text{A}$ 换成 $\text{B}$ ,$\text{B}$ 换成 $\
阅读全文
摘要:传送门 考虑简单的容斥 设 $F(n,m)$ 表示 $a \in [1,n] , b \in [1,m]$ 的满足 $a+b=a \text{ xor } b$ 的数对的数量 那么答案即为 $F(r,r)-2F(l-1,r)+F(l-1,l-1)$ 意思就是总方案减去 $a,b$ 至少一个数小于 $
阅读全文
摘要:传送门 由于只要考虑 $\mod 2$ 意义下的答案,所以我们只要维护一堆的 $01$ 容易想到用 $bitset$ 瞎搞...,发现当复杂度 $qv/32$ 是可以过的... 一开始容易想到对每个集合开一个 $bitset$ ,叫 $cnt[]$ ,维护各种值的数出现了奇数还是偶数次 因为要维护那
阅读全文
摘要:传送门 这个显然考虑容斥,那么答案就是总方案数减去至少有一个 $1$ 的方案数加上至少有两个 $1$ 的方案数减去至少有三个 $1$ 的方案数... 即 $ans=\sum_{x=0}^{max(a)}(-1)^{cnt[x]}(2^{f[x]}-1)$ ,其中 $cnt[x]$ 表示 $x$ 二进
阅读全文
摘要:传送门 看到 $n=250$ 显然考虑 $n^3$ 的 $dp$ 设 $f[i][j]$ 表示填完前 $i$ 行,目前有 $j$ 列的最小值是 $1$ 的合法方案数 那么对于 $f[i][j]$ ,枚举 $f[i-1][k]$ ,有 $f[i][j]=\sum_{k=0}^{j}\binom{n-k
阅读全文
摘要:传送门 注意到矩形往上是无限的,考虑把点按 $y$ 从大到小考虑 对于枚举到高度为 $h$ 的点,设当前高度大于等于 $h$ 的点的所有点的不同的 $x$ 坐标数量为 $cnt$ 那么对于这一层高度 $h$ 我们就有 $cnt(cnt+1)/2$ 种不同的 $l$,$r$ ,使得矩形内点集不同 发现
阅读全文
摘要:学到后面数学越来越多了,感觉好难啊,开个博客专门记录一下数学相关的东西 因为反正也没人看,所以主要还是给自己看的 一些符号: 数论函数的卷积:$\ast$,$ h = f \ast g$ 则 $h(n)=\sum_{d|n}f(d)g(\frac{n}{d})$ $\epsilon $ 叫单位元,对
阅读全文
摘要:传送门 首先证明 $d(ij)=\sum_{k|i}\sum_{l|j}[gcd(k,l)==1]$ 把 $i,j$ 考虑成唯一分解后的形式:$P_{i1}^{k1}P_{i2}^{k2}...P_{in}^{kn}$ 对于 $i,j$ 中某个相同的质因子 $P_{x}$ ,$i=...P_{x}^
阅读全文
摘要:传送门 $ Ans = \sum_i^N\sum_j^Mlcm(i,j)$ 因为 $lcm(x,y)=xy/gcd(x,y)$ 所以 $Ans = \sum_i^N\sum_j^Mij/gcd(i,j)=\sum_i^N\sum_j^M(\ i/gcd(i,j)\ )(\ j/gcd(i,j)\ )
阅读全文
摘要:传送门 设 $f[x]=\sum_i^N\sum_j^N[gcd(i,j)==x]$ 那么答案就是 $Ans=\sum_{prime}f(prime)$ 显然 $f$ 可以反演,设 $F[x]=\sum_i^N\sum_j^N[x|gcd(i,j)]$ 那么 $F[x]=\sum_{x|d}f[d]
阅读全文
摘要:传送门 对于每次询问 $a,b,c,d,n$ 答案就是 $f[n]=\sum_{i=a}^{b}\sum_{j=c}^{d}[gcd(i,j)==n]$ 看到熟悉的 $gcd$ ,莫比乌斯反演 设 $F[n]=\sum_{i=a}^{b}\sum_{j=c}^{d}[n|gcd(i,j)]$,那么
阅读全文
摘要:传送门 首先对于询问 $x,a,b$ 答案就是 $f[x]=\sum_{i=1}^{a}\sum_{j=1}^{b}[gcd(i,j)==x]$ 看到 $gcd(i,j)$,莫比乌斯反演走起 设 $F[x]=\sum_{i=1}^{a}\sum_{j=1}^{b}[x|gcd(i,j)]$ 那么有
阅读全文
摘要:传送门 显然答案就是 $\sum_{i=1}^{n}\sum_{j=1}^{m}(2gcd(i,j)-1)$ 把合式里面的系数 $2$ 和常数 $+1$ 提出来,变成 $2\sum_{i=1}^{n}\sum_{j=1}^{m}(gcd(i,j))-nm$ 看到了有趣的 $gcd$ ,考虑莫比乌斯反
阅读全文
摘要:传送门 见计数想容斥 考虑先求出 $F[i]$ 表示每种长度的不下降子序列的方案数,但是可能有多算,因为这样有算 从长度 $i+1$ 的不下降子序列变成长度为 $i$ 的不下降子序列的情况 而根据题目的要求一旦序列不下降就要停止操作,但是可以发现 $F[i]$ 只要扣掉 $F[i+1]*(i+1)$
阅读全文
摘要:传送门 见计数想容斥 显然每个人交换后可以变成任意的排列 所以就是求对于所有排列使得每个位置的值都和一开始的值不同 感觉同一个值算同一个数不太好搞,考虑把所有数都看成不同的,最后答案再除 $\prod _{i=1}^{n}fac[cnt[i]]$(其中 $cnt[i]$ 表示值为 $i$ 的数的个数
阅读全文
摘要:传送门 见计数想容斥 发现所有同学至少有一个特产的限制不好搞 考虑设 $F[i]$ 表示 至少 有 $i$ 个同学没有特产的方案数 那么根据容斥原理答案就是 $F[0]-F[1]+F[2]-F[3]...+(-1)^nF[n]$ 考虑怎么求 $F[i]$,首先要强制任意 $i$ 个同学没特产,那么有
阅读全文
摘要:传送门 见计数想容斥 首先题目可以简单转化一下, 求 糖果比药片能量大的组数比药片比糖果能量大的组数多 $k$ 组 的方案数 因为所有能量各不相同,所以就相当于求 糖果比药片能量大的组数为 $(n+k)/2$ 组的方案数,如果 $(n+k)$ 为奇数则无解 发现这个 '恰好' 很不好算,考虑先算出
阅读全文
摘要:传送门 每种硬币有数量限制,感觉很不好算 先考虑一下如果没用限制时可以怎么做 显然直接背包一下就可以了 设 $f[i][j]$ 表示前 $i$ 种硬币选了一些,总价值为 $j$ 的方案数,转移显然,并且可以滚动数组优化 但是现在有限制,考虑容斥,设 $f[j]$ 表示不考虑限制总价值为 $j$ 的方
阅读全文
摘要:传送门 答案=没有限制的方案数 - (限制1公司没修的方案 ∪ 限制2公司没修的方案 ∪ 限制3公司没修的方案 ∪...∪ 限制n-1公司没修的方案) 矩阵树计算方案数,然后容斥 根据容斥原理 (限制1公司没修的方案 ∪ 限制2公司没修的方案 ∪ 限制3公司没修的方案 ∪...∪ 限制n-1公司没修
阅读全文