ARC202 题解
[ARC202B] Japanese "Knight's Tour"
太难了太难了,会不了一点儿。看这个之前,你最好了解一下完全剩余系的知识,这很有用。
首先观察到显然的事实,上下走如果不经过边界,其奇偶域就是封闭的,换句话说就是你不可能从奇走到偶,也不可能从偶走到奇,这样你就根本不可能进行 Euler Tour。那么我们就需要经过边界才能转换,故我们需要 \(H\) 是奇数。\(H\) 是偶数直接输出 \(0\)。
你可以手摸一下画图进行转化,我们发现由于你的棋盘是定的,轨迹是定的,于是我们可以任意改变棋盘形态和规则只要你保证还是 Euler Tour 且与原来等价。你发现通过对行进行交换,你可以很容易的将左右系坐标相邻的行换到一起,并将 \(-2\) 改为 \(-1\),这看着就比较清爽了。
我们对 \(W\) 的奇偶进行分类讨论。
若 \(W\) 为奇数,这个较为简单。我们发现,Euler Tour 这个要求是一个极其强的限制,你每个东西只能走一次,由于你在纵坐标上的操作仅有 \(-1\),于是你的行走肯定形如从一个 \((0,i)\) 走到一个 \((0,j)\)(注意我们不保证 \(i<j\),但 \(i\) 肯定不能等于 \(j\) )。我们记 \(d_i=i-j\),手摸一下很容易发现,我们的路径是不能交叉的,于是只要我们的 \(d\) 改变了,必然会发生交叉的情况,于是在这种情况下 \(d\) 是全部相等的!那么我们发现,我们只要确定了前 \(H\) 步,我们就确定了 \(d\),瞬间确定了所有!考虑什么时候 \(d\) 是有效的,首先 \(d\) 不能等于 \(0\),这很重要,其次,由于你要遍布第 \(0\) 行上的所有点,且你每次做的操作是横坐标加 \(d\) 模 \(W\),说明你是在一个完全剩余系上跳跃,那么根据费马小定理的一些引理,这个的充要条件是 \(\gcd(d,W)=1\),那么就好了。
若 \(W\) 为偶数,这个不是很简单,你手摸发现这个与奇数的区别是:在横轴的域内,若 \(W\) 为奇数,任意的 \(i\) 列和 \(j\) 列都满足从 \((0,i)\) 和 \((0,j)\) 这两个起点开始的路径可能互相干扰,那么偶数你可以发现,当 \(i\) 和 \(j\) 的奇偶性不同时,他们是不会互相干扰的!那么我们就需要先用 \(H\) 步确定偶数的所有路径,再用 \(H\) 步确定奇数的所有路径,也就是我们需要使用 \(2H\) 步确定整个的棋盘。相应的,由于奇偶数分离,我们需要两个 \(d_0,d_1\) 来确定这个事。那么你把奇偶绑成一组,限制就变成了 \(\gcd(\frac{d_0+d_1}{2},\frac{W}{2})=1\)。
然后我们就做完了,太困难了。
二项式反演及其证明
Min-Max 容斥那个式子的证明需要,故在此提及一下。
就证一下形式 \(1\)。
如果有 \(g(n)=\sum_{i=0}^n\binom{n}{i}\times f(i)\),就有 \(f(n)=\sum_{i=0}^n \binom{n}{i}\times (-1)^{n-i}\times g(i)\)。
下面证明,我们将条件带入,即证,\(f(n)=\sum_{i=0}^n\binom{n}{i}(-1)^{n-i}(\sum_{j=0}^i\binom{i}{j}f(j))\),即证 \(f(n)=\sum_{i=0}^n\sum_{j=0}^i\binom{n}{i}\binom{i}{j}(-1)^{n-i}f(j)\),我们发现 RHS 有一个 \(f(j)\),于是想办法把 \(j\) 提到前面来,那么即证 \(f(n)=\sum_{j=0}^nf(j)\sum_{i=j}^n\binom{n}{i}\binom{i}{j}(-1)^{n-i}\),组合数上下一样有一个阶乘可以消掉,我们考虑继续进行变换,即证 \(f(n)=\sum_{j=0}^nf(j)\sum_{i=j}^n\frac{n!}{(n-i)!j!(i-j)!}(-1)^{n-i}\),由于我们把 \(j\) 提到了前面,于是我们想拆出一些只与 \(j\) 有关的组合数,那么即证 \(f(n)=\sum_{j=0}^nf(j)\binom{n}{j}\sum_{i=j}^n\binom{n-j}{i-j}(-1)^{n-i}\),后面那个 sigma 非常恶心,我们换掉,将 \(k\) 设为 \(i-j\),即证 \(f(n)=\sum_{j=0}^nf(j)\binom{n}{j}\sum_{k=0}^{n-j}\binom{n-j}{k}(-1)^{n-k-j}1^k\),那么后边根据组合意义就直接二项式定理了,即证 \(f(n)=\sum_{j=0}^nf(j)\binom{n}{j}[n-j=0]\),故 RHS 为 \(f(n)\),与 LHS 相等,证毕。
二项式反演一般用在不超过与恰好的容斥中,在此,不超过对应的就是 \(g\),恰好就是 \(f\)。
Min-Max 容斥及其证明
有了二反的形式一这个东西也不难证了。
设 \(\max(S)=\sum_{T\subset S\land |T|\neq 0} h(|T|)\min(T)\),\(\min\) 和 \(\max\) 交换也成立,接下来我们展示如何使用二项式反演推出容斥系数 \(h\)。
首先我们先将 \(S\) 集合中的数降序排序,那么我们想让最大数贡献为 \(1\),其他数贡献为 \(0\),考虑第 \(k\) 大的数,它在 \(\min(T)\) 中会被统计到当且仅当其他数都大于等于它,那么其被统计的次数就是 \(cnt(k)=\sum_{i=0}^{k-1}\binom{k-1}{i}\times h(i+1)\)。根据我们的需求,其实就是 \([k=1]=\sum_{i=0}^{k-1}\binom{k-1}{i}\times h(i+1)\)。
\(k-1\) 太难看了,我们变成 \(k\),直接变成 \([k=0]=\sum_{i=0}^{k}\binom{k}{i}\times h(i+1)\),观察二反形式 \(1\),简直一模一样吧,即 \(f(n)=[n=0]\),\(g(i)=h(i+1)\),于是变成 \(h(k+1)=\sum_{i=0}^{k}\binom{k}{i}\times (-1)^{k-i}\times [i=0]\),即 \(h(k+1)=(-1)^k\),所以 \(h(i)=(-1)^{i-1}=(-1)^{i+1}\)
我们得出了二项式反演的式子,即 \(\max(S)=\sum_{T\subset S\land |T|\neq 0} (-1)^{|T|+1}\min(T)\)
gcd-lcm 反演及其证明
自己证的,有可能不对。
\(\operatorname{lcm}(S)=\prod_{g\in P} g^{\max(S)}\),其中 \(P\) 是质数集,我们只是在将数写成唯一分解定理的形式。接下来,我们对那个指数上的 \(\max\) 施 Min-Max 容斥。我们直接变成 \(\operatorname{lcm}(S)=\prod_{g\in P} g^{\sum_{T\subset S\land |T|\neq 0} (-1)^{|T|-1}\min(T)}\),把指数上的 sigma 拆下来变成 prod。直接变成:\(\operatorname{lcm}(S)=\prod_{T\subset S\land |T|\neq 0} (\prod_{g\in P} g^{\min(T)})^{(-1)^{|T|-1}}\),根据定义,我们就变成了,\(\operatorname{lcm}(S)=\prod_{T\subset S\land |T|\neq 0} \gcd(T)^{(-1)^{|T|-1}}\)
这样就搞完了。
狄利克雷卷积与欧拉反演,莫比乌斯反演
狄利克雷卷积
定义狄利克雷卷积为 \((f\times g)(n)=\sum_{d|n} f(d)g(\frac{n}{d})\)。其实这个可能只是为了统一一下这几个数论反演。
有一些基本函数还是要知道一下的:
- 单位函数:\(\varepsilon(n)=[n=1]\)
- 常数函数:\(1(n)=1\)
- 数论幂函数:\(\operatorname{Id}_k(n)=n^k\)
欧拉反演
定义 \(\varphi(n)=\sum_{i=1}^{n}[\gcd(i,n)=1]\)。
我们有 \(n=\sum_{d|n}\varphi(d)\)。
\(Proof.\) 由于 \(\gcd(i,n)\) 唯一,于是我们随着我们要证明的狄利克雷卷积的形式枚举因数,变成 \(n=\sum_{d|n}\sum_{i=1}^{n}[\gcd(i,n)=d]\),你不管莫反还是欧反都需要把 \(\gcd\) 变成 \(1\),于是你直接变成 \(n=\sum_{d|n}\sum_{i=1}^{\frac{n}{d}}[\gcd(i,\frac{n}{d})=1]\),于是 \(n=\sum_{d|n}\varphi(\frac{n}{d})=\sum_{d|n}\varphi(d)\),证毕。
这个反演用狄利克雷卷积可以描述为 \(\operatorname{Id}=\varphi\times 1\)
莫比乌斯反演
我们定义莫比乌斯函数 \(\mu(n)\)。若 \(n=1\),\(\mu(n)=1\),若 \(n\) 含平方因子,则 \(\mu(n)=0\),否则 \(\mu(n)=(-1)^k\),\(k\) 为 \(n\) 的本质不同质因子个数。这个其实就和 Min-Max 那个一样,都是配系数。
我们有 \([n=1]=\sum_{d|n}\mu(d)\)。
\(Proof.\) 莫反是集合容斥的形式,我们枚举集合,\(\sum_{S\subset\{1,2,...,k\}} (-1)^{|S|}=\sum_{i=1}^{k}\binom{k}{i}(-1)^i1^{k-i}=(1-1)^k=[k=0]\),那么只有 \(n=1\) 时 \(k=0\),证毕。
这个反演用狄利克雷卷积可以描述为 \(\varepsilon=\mu\times 1\)
Bridge(不知名反演)
狄利克雷卷积中貌似还有一个联系 \(\mu\) 和 \(\varphi\) 的卷积。有个 \(\operatorname{Id}\times \mu=\varphi\)
我们直接证明,不拆式子。由 \(\varepsilon=\mu\times 1\),故 \(\mu\) 和 \(1\) 是数论逆元。
我们直接上吗,由 \(\operatorname{Id}=\varphi\times 1\),有:\(\varphi\times 1\times\mu=\operatorname{Id}\times \mu\),即 \(\varphi=\operatorname{Id}\times \mu\)
狄利克雷前缀和
即求这样的前缀和:\(b_i=\sum_{d|i}a_d\)
首先暴力贡献的话肯定是可以的,这样是 \(O(n\ln n)\) 的。
不暴力的话你可以理解为高维前缀和,你可以把每个质数看作一维,每次拓展一维,就是你注意到其实就是在数的整除关系其实是和其质因数分解后指数的包含关系相关的。
于是你做的时候就类似埃筛,对每个质数(每一维)跑一遍就可以了。注意枚举顺序即可。
[ARC202C] Repunits
来更了。太困难了,又是一天没了。
首先证明一个结论,\(\gcd(R(a),R(b))=R(\gcd(a,b))\)。这个就更相减损发现形式和 \(\gcd\) 相同即可说明(这种一般更相减损都会比辗转相除好证)。\(\gcd(10^a-1,10^b-1)=\gcd(10^b-1,10^a-10^b)=\gcd(10^b-1,10^b(10^{a-b}-1))\),由于 \(\gcd\) 肯定不可能是 \(2\) 的倍数也不可能是 \(5\) 的倍数,于是原式化为 \(\gcd(10^b-1,10^{a-b}-1)\),递归证毕。
然后对式子施 gcd-lcm 反演。于是 \(\operatorname{lcm}(S)=\prod_{T\subset S\land |T|\neq 0} {R_{\gcd(T)}}^{(-1)^{|T|-1}}\)。嘿嘿嘿然后你发现你不会了,那没办法,不会就是不会。
它貌似构造了一个神奇的狄利克雷前缀和差分一样的东西,然后令 \(\prod_{d|i}f_d=R_i\),然后这个东西它有一些非常好的性质。
继续推。
原式等于 \(\prod_d f_d^{\sum_{T\subset S\land |T|\neq 0} d|gcd(T) (-1)^{(|T|-1)}}=\prod_d f_d(d \space in \space any \space appeared \space R_i)\),构造那个 \(f\) 是简单的,我们主要说一下这个式子的证明。
其实就是一个二项式定理,即 \(\sum_{i=1}^{k}\binom{k}{i}(-1)^{i-1}\),\(i-1\) 太难看了拆出来,变成 \((-1)\times \sum_{i=0}^{k}\binom{k}{i} (-1)^i+1\),前面是二项式定理,就是 \([k=0]+1\),也就是 \(1\),于是它就特别神奇的把容斥系数凑到了 \(1\)。
我觉得这个可能和莫反差不多,可能你可以对那个指数做莫反,可能会比较容易看一点,但是构造那个 \(f\) 确实是必要的,虽然以我的能力我解释不了。

浙公网安备 33010602011771号