Alpha1022's Diaries
那儿,矛盾对立寂灭之处,即是涅槃。
挚爱的渴望之星,依然向我灼灼燃烧。
Xmas Contest 2023 数数题考察
  1. C - Clamp Clamp Clamp
  2. E - Exponent of PI
  3. H - How to Pose Such a Problem

C - Clamp Clamp Clamp

简要题意.

给定正整数 N,对于 {0,1,,2N} 的排列 a=(a0,a1,,a2N)aA 当且仅当对 i=0,,N1 满足 a2i+1<a2i+2

aA 定义 f(a) 如下:

  • b0=a0

  • 对于 i=0,,N1,设 bi+1=min{max{bi,a2i+1},a2i+2}

  • 定义 f(a)=bN

给定 Q 个整数 Z1,,ZQ,对于 j=1,,Q,求出 |{af(a)=ZjaA}|。模 998244353

1N1071Q2.5×105

li=a2i+1,ri=a2i+2,则 f(a) 一个形象的意义就是将 b0 每次先尝试拉到 li 再尝试拉到 ri

考虑极大的 k 满足后 k 个区间的交非空而后 k+1 个区间的交为空。记交为 [l,r],若 rNk1<lf(a)=l,否则 f(a)=r。若不存在 k,则交集必然包含 N,进一步必有 f(a)=N

考虑 rNk1<l,固定 k,l 可以如下计算:

  • k 个区间中选取一个左端点为 l

  • 剩下 k1 个区间左端点 <l,所有 k 个右端点 >l

  • 倒数第 k+1 个区间左端点 < 右端点 <l

  • 其余区间任选。

有计算式

klk1_(2Nl)k_(l+1k2)2(Nk1)(2N2k1)!

化简可以得到

l!(2Nl)!k2(Nk)(2N2k1lk1)

定义

fl,s,t=N1k=1ks2k(2N2ktlk1)(s,t{0,1})

fl+1,, 容易从 fl,, 递推得到。

还要考虑没有 k 的情况,考虑先枚举 a0 再分配左右端点,容易数出这样的 a(2N+1)(N!)2 种。

E - Exponent of PI

简要题意.

给定两两互质的正整数 A,B,C,记 Nk 是集合 {nn=xBCyCAzABx,y,zZ+} 中第 k 小的元素。

则可以证明 k11N2kpqπe 的形式,其中 p,e 是整数,q 是正整数。求出 pq 在模 998244353 意义下的结果和 e

1A,B,C250

记集合 I={ii=BCu+CAv+ABwu,v,wN},则答案为 piIp2i

考虑先求出 GF F(x)=iIxi,再考虑把它改成 DGF。记方案数的 GF 是

G(x)=1(1xBC)(1xCA)(1xAB)

考虑 imodABC 可以确定 umodA,vmodB,wmodC,因此 0,,ABC1 内的合法的数的 GF 是

(1xABC)3(1xBC)(1xCA)(1xAB)

F(x) 就是其除一个 1xABC,即

F(x)=(1xABC)2(1xBC)(1xCA)(1xAB)

因此 DGF 就是

ζ(2BC)ζ(2CA)ζ(2AB)ζ(2ABC)2

查阅 Wikipedia 可以知道

ζ(2n)=(1)n+1B2n(2π)2n2(2n)!

其中 B2n 是 Bernouli Number 的第 2n 项。使用载谭 Binomial Sum 求解即可。

H - How to Pose Such a Problem

简要题意.

给定 N4×4 的矩阵 W03,03,保证 W0,0=0
(0,0) 开始,每一步可以走 (i,j) (0i,j3),权值是 Wi,j。一条路径的权值是每一步的权值之积。
对于 k=1,2,,N,求出走到 (k,k) 且不触碰直线 y=x1 的路径的权值之和。

2N2.5×105Wi,j 随机。

F(x,y)=0i,j3Wi,jxiyj
gk 是从 (0,0) 走到 (k,k)中途不触碰 y=x 的权值和,G(x) 是其 OGF,则答案就是 11G(x)

不妨把一步 (i,j) 看成 i+1j1,那么不触碰直线 y=x1 的所有路径的所有本质不同的循环移位,和任意游走的路径的所有本质不同的循环移位,的集合相等(懒得组织语言了,读者可以结合代数部分理解)。

计数本质不同的无限制游走的循环移位,只需要考虑把当前在最开头那一步看成第一步,则答案为

[xkyk]0i,j3(i+j)Wi,jxiyj1F(x,y)

二元有理 GF 的对角线是 D-Finite 的。可以暴力高斯消元。

而有限制游走的循环移位,则考虑将第一个 G(x) 的结构循环移位,即

[xk]j12jgjxj1G(x)=[xk]2xG(x)1G(x)

则我们现在有 H(x)=xG(x)1G(x),要求 11G(x)。容易解得 11G(x)=exp(x0t1H(t)dt)