【省选模拟】20/04/03

SetSet

  • ans=i=1uTi(nit)ans=\sum_{i=1}^{u}T^i\binom{n-i}{t},其中 u=nk+1,t=k1u=n-k+1,t=k-1,然后推式子
    S=i=1uTi(nit)ST=i=2u+1Ti(ni+1t)(T1)S=Tnk+2(k1t)T(n1t)+(i=1uTi(nit1)T(n1t1))S=\sum_{i=1}^{u}T^i\binom{n-i}{t}\\ ST=\sum_{i=2}^{u+1}T^i\binom{n-i+1}{t}\\ (T-1)S=T^{n-k+2}\binom{k-1}{t}-T\binom{n-1}{t}+(\sum_{i=1}^uT^{i}\binom{n-i}{t-1}-T\binom {n-1}{t-1})
    递归即可,预处理 n1n-1 的组合数 code

MathMath

  • 转换一下题意发现求 i=1n(1+ix)\prod_{i=1}^n (1+ix)pp 意义下为 0 的下标个数
    a=np,b=napa=\lfloor\frac{n}{p}\rfloor,b=n-ap,那么即求 (i=1p11+ix)a(i=1b1+ix)(\prod_{i=1}^{p-1}1+ix)^a(\prod_{i=1}^b 1+ix)
    注意到前面一坨有 p1p-1 个根,是 [1,p1][1,p-1],我们知道 xp110x^{p-1}-1\equiv 0 也有 p1p-1 个同样的根,并且次数相同,所以用 xp11x^{p-1}-1 替换原式
    那么 (xp11)a=(1)i(ai)x(p1)(ai)(x^{p-1}-1)^a=\sum (-1)^i\binom{a}{i}x^{(p-1)(a-i)},考虑有多少个非零项,对于 (ai)0\binom{a}{i}\neq 0 有会有一项,由 lucaslucas 定理,aa 的每一位大于 ii,方案数即 (ai+1)\prod (a_i+1)
    b=p1b=p-1,那么我们用上述方法算 (xp11)a+1(x^{p-1}-1)^{a+1}
    否则系数不重叠,分治 fftfft 算出 bb 的非零项即可 code

DivideDivide

  • 构造,我们将每个点拆成多个点满足每个点的度数 k\le k,然后强制这 kk 条边颜色不同,这样每个点的不和谐度只会为 1,下面我们证明对于一个最大度数为 kk 的二分图,用 kk 种颜色染边可以使一个点的所有出边颜色不同

  • 对于 k=0k=0 成立
    假设对于 k1k-1 成立,我们希望对新图中度数为 kk 的点找到一个完美匹配,然后将完美匹配的边设成一种颜色,删去这些边就可以转换为子问题
    我们可以加一些虚点,将度数不足 kk 的点补足 kk,首先证明有完美匹配,
    若没有,由 hallhall 定理, 存在 SS 满足 N(S)<S|N(S)|<|S|,而在 S|S|N(S)|N(S)| 之间有 SD|S|*D 条边,而 N(S)N(S) 最多连出去 N(S)D|N(S)|*D 条边,所以不符
    由于度数为 kk 的一定不会匹配虚点,我们将虚点即虚点的边删掉,将完美匹配的边去掉即得证

  • 基于此,我们可以增量构造每条边的颜色,令 c0c_0xx 可以填的最小颜色,c1c_1yy 可以填的最小颜色, 若 c0=c1c_0=c_1 则染色,否则假设 c0<c1c_0<c_1,我们让这条边为 c0c_0,让 yy 原本 c0c_0 的边为 c1c_1…,容易发现这个过程是没有环的,所以就构造完了,复杂度 O((n+mk)m)O((n+\frac{m}{k})m) code

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章