zoukankan      html  css  js  c++  java
  • 「atcoder

    link


    如果规定边的方向,问题变成了有向欧拉图的欧拉路计数(假设边有编号,最后方案数除以阶乘即可)。

    套 BSET 定理变成生成树计数,直接分类讨论树的形态即可 (O(1)) 计算。

    然后发现边的方向只有 (O(n)) 种可能,因此就可以做到 (O(n)) 的复杂度。

    submission


    然后又到了喜闻乐见的 GF 时间。我们先快进到:

    [[x_a^ax_b^bx_c^cx_d^d]F(x_a, x_b, x_c, x_d) = frac{1 - x_b^2 - x_c^2}{1 - ((x_a^2 + x_b^2 + x_c^2 + x_d^2) - (x_ax_c - x_bx_d)^2)} ]

    然后就被 EI 教导说 “在多元GF中,往往关系比形式重要”。

    没关系,我们可以尝试根据题解逆向推导一下。考虑把分母展开:

    [egin{aligned}[] & [x_a^ax_b^bx_c^cx_d^d] sum_n((x_a^2 + x_b^2 + x_c^2 + x_d^2) - (x_ax_c - x_bx_d)^2)^n \ =& [x_a^ax_b^bx_c^cx_d^d] sum_nsum_i inom{n}{i}(-1)^{i}(x_a^2 + x_b^2 + x_c^2 + x_d^2)^{n-i}(x_ax_c - x_bx_d)^{2i} \ =& [x_a^ax_b^bx_c^cx_d^d] sum_nsum_i inom{n}{i}(-1)^{i}(x_a^2 + x_b^2 + x_c^2 + x_d^2)^{n-i}left(sum_j inom{2i}{j}(-1)^{j}x_b^{j}x_d^{j}x_a^{2i-j}x_c^{2i-j} ight) \ =& sum_isum_{j} inom{frac{a+b+c+d}{2}-i}{i}(-1)^{i}inom{frac{a+b+c+d}{2}-2i}{frac{a+j}{2}-i,frac{b-j}{2},frac{c+j}{2}-i,frac{d-j}{2}}inom{2i}{j}(-1)^{j} \ =& sum_i inom{frac{a+b+c+d}{2}-i}{i}(-1)^{i}inom{frac{a+b+c+d}{2}-2i}{frac{a+b}{2}-i}sum_j(-1)^jinom{2i}{j}inom{frac{a+b}{2}-i}{frac{a+j}{2}-i}inom{frac{c+d}{2}-i}{frac{c+j}{2}-i} end{aligned} ]

    注意 (n = frac{a + b + c + d}{2} - i),以及 (j) 的奇偶性必须和 (a, b, c, d) 一致。

    然后记:

    [egin{aligned}[] F(z) &= sum_n f_nz^n = sum_j (-1)^j imesfrac{z^j}{j! imes(frac{b-j}{2})! imes(frac{d - j}{2})!}\ G(z) &= sum_n g_nz^n = sum_j frac{z^j}{j! imes(frac{a-j}{2})! imes(frac{c-j}{2})!} end{aligned} ]

    则只需要求 ([z^{2i}]F(z) imes G(z)) 即可,那么至少可以做到 (O(nlog n)) 然后这个东西确实长得很像题解中的式子

    然后又被 EI 教育说 “那个卷积可以用整式递推优化”。

    可以发现 ((n + 2)(n + 1)g_{n + 2} = (frac{a-n}{2})(frac{c-n}{2})g_n),那么 ({g_n}) 是 p-recursive 的,那么 (G(n)) 是 d-finite 的。

    两个 d-finite 的幂级数乘起来仍然是 d-finite 的,因此 (F(z) imes G(z)) 是 d-finite 的。

    然而我并不会推导整式递推的递归式,所以咕了。


    所以可不可以多元拉反啊,不是很懂这套理论。

  • 相关阅读:
    8进阶、M语言对Simulink模型的自动化操作及配置
    7进阶、Simulink回调函数
    6基础、Simulink模型保存为图片
    PCAN-USB
    Unix-Linux编程实践 学习点滴
    学一点吧
    VM中ubuntu已经正确配置了静态IP仍无法上网
    Linux在向磁盘新建文件的时候在系统层面的四步操作
    如何更有人缘?
    我的第一个javascript网页作业
  • 原文地址:https://www.cnblogs.com/Tiw-Air-OAO/p/14440147.html
Copyright © 2011-2022 走看看