ARC133E Cyclic Medians 题解

OIer_Eternity

2024-08-31 16:27:13

Solution

考虑统计最终的权值 \ge k 的方案数,将 \ge k 的数记作 1<k 的记作 0,后面所有的 a,x,y 都是 0/1

而若存在 a,0,0a,1,1 的情况,则与最初的 a 的取值无关,而只与最后一次 x_{(i\bmod n)+1}=y_{(i\bmod m)+1} 的值有关。

因此可设 f(k,0/1) 表示钦定 \ge k 的数为 1<k 的数为 0,最后一次 x_{(i\bmod n)+1}=y_{(i\bmod m)+1} 对应的 x0/1 的方案数。

由对称性可知 f(k,0)=f(V+2-k,1),则 \sum\limits_{k=2}^V f(k,0)=\sum\limits_{k=2}^V f(k,1)f(1,1)=V^{n+m}

那么只需考虑所有对应的 x\not=y 的情况,此时最终的权值就是最初的 a

首先,假设 n\ge m,因为若 n<m 可交换 x,y

d=\gcd(n,m),n=Nd,m=Md

则每个 x_i 对应的 y 的集合为 \{y_{i+k(n-m)\bmod m}~|~k\in[0,m)\cap\N\}

可以证明 \{i+k(n-m)\bmod m \big|~k\in[0,m)\cap\N\}=\{i+kd~\big|~k\in[0,M)\cap\N\}。证明如下:

\begin{aligned} k(n-m)\bmod m&=kn\bmod m\\ &=kn-\lfloor\dfrac{kn}m\rfloor\cdot m\\ &=kdN-\lfloor\dfrac{kN}M\rfloor\cdot Md\\ &=d(kN-\lfloor\dfrac{kN}M\rfloor\cdot M)\\ &=d\cdot(kN\bmod M) \end{aligned}

则只需证明 kN\bmod M 互不相同,首先可知 kN\bmod M=\Big((k\bmod M)\cdot N\Big)\bmod M,因此只需考虑 k\in[0,M)

考虑反证法,假设 \exist k_1,k_2\in[0,M),k_1N\bmod M=k_2N\bmod M

即说明 \big(|k_1-k_2|\cdot N\big)\bmod M=0,而由于 |k_1-k_2|<M,\gcd(N,M)=1,必然不满足,矛盾,得证。

最终问题转化为求出对于每个 i\in[1,m],满足下列条件的方案数:

称一个 i 对应一组等价类,则一共有 d 组,且每组的方案数相同。

而每组的方案数为 x=0,y=1 的方案数和 x=1,y=0 的方案数之和。

即总的方案数 S_k=\Big((k-1)^{\frac nd}(V+1-k)^{\frac md}+(V+1-k)^{\frac nd}(k-1)^{\frac md}\Big)^d

那么对于所有 k>1,出现过 x=y 的方案数之和 V^{n+m}-S_k,还需除以 2 才是 x=y=1 的方案数,因为前面已经证明了 \sum\limits_{k=2}^V f(k,0)=\sum\limits_{k=2}^V f(k,1)

最终答案为 \sum\limits_{k=2}^V[a\ge k]S_k+\dfrac{(V-1)V^{n+m}-\sum\limits_{k=2}^VS_k}2+V^{n+m}