zoukankan      html  css  js  c++  java
  • UOJ269 清华集训2016 如何优雅地求和 下降幂多项式、NTT

    传送门


    神仙题?

    看到连续的点值,那么一定是要利用到连续点值的性质,可以考虑下降幂多项式,即考虑多项式(F(x) = sumlimits_{i=0}^m a_ix^{underline i})

    因为有下降幂,下降幂和阶乘相关,所以可以考虑点值的指数型生成函数,故设(G(x) = sumlimits_{i=0}^infty frac{f(i)}{i!} x^i)。我们考虑(F(x) = x^{underline m}),那么(G(x) = sumlimits_{i=0}^infty frac{i^{underline m}}{i!} x^i = sumlimits_{i=m}^infty frac{x^i}{(i-m)!} = x^m e^x),也就是说设(H(x) = sumlimits_{i=0}^m a_ix^i),那么(H(x)e^x = G(x)),即(H(x) = G(x)e^{-x}),我们就可以通过连续的点值+NTT得到下降幂多项式的每一项的系数。

    然后我们考虑(Q(F,n,x))。因为(F(x))是下降幂的形式,所以我们只需要考虑(Q(f(x) = x^{underline k} , n , x))的值。

    (egin{align*} Q(x^underline k , n , x) &= sumlimits_{i=0}^n i^underline k inom{n}{i} x^i (1-x)^{n-i} \ &= sumlimits_{i=k}^n frac{n!}{(n-i)!(i-k)!} x^i (1-x)^{n-i} \ &= n^underline ksumlimits_{i=k}^n frac{(n-k)!}{(n-i)!(i-k)!} x^i (1-x)^{n-i} \ &= n^underline k sumlimits_{i=0}^{n-k} inom{n-k}{i}x^{i+k}(1-x)^{n-k-i} \ &= n^underline k x^k end{align*})

    就可以(O(m))计算答案。复杂度(O(mlogm))

    代码

  • 相关阅读:
    C# 反射
    jquery 循环绑定click的问题
    socket 编程
    EF code first出现错误:列名 Discriminator 无效
    C# 两个类是否继承关系
    C# MD5,hmacSHA1
    文件分块上传
    读写CSV到DataTable
    ajax 提交数组 泛型集合(嵌套集合)
    Json中Date映射到model
  • 原文地址:https://www.cnblogs.com/Itst/p/10951571.html
Copyright © 2011-2022 走看看