zoukankan      html  css  js  c++  java
  • *一道题21

    $t leq 1000$次询问:$n leq 30000$的无向图的所有连边方式的权值总和,一种连边方式的贡献为连通块数的$m leq 15$次方。对998244353取模。

    $n^3$:$f(i,j)$表示$i$个点$j$个连通块的方案数,$f(i,j)=sum_{k=1}^{i}g(k)inom{i-1}{k-1}f(i-k,j-1)$,$g(i)$表示$i$个点的连通图数,$g(i)=2^{frac{i(i-1)}{2}}-sum_{k=1}^{i-1}g(k)inom{i-1}{k-1}2^{frac{i(i-1)}{2}}$。

    $n^2$:直接算答案,$f(i,j)$--$i$个点图的所有方案的“连通块个数的$j$次方”的和。由于$(n+1)^m=sum_{i=0}^{m}inom{m}{i}n^i$,所以$f(i,j)=sum_{k=1}^{i}g(k)inom{i-1}{k-1}sum_{t=0}^{j}inom{j}{t}f(i-k,t)$。

    $mnlog^2n$:指数转组合数。$n^m=sum_{i=0}^{m}egin{Bmatrix} m \ i end{Bmatrix}inom{n}{i}i!$,所以$n^2$算法中的$f(i,j)=sum_{k=0}^{m}egin{Bmatrix} m \ k end{Bmatrix}k!w(i,j)$,其中$w(i,j)$表示$i$个点的图所有方案中,“$inom{连通块个数}{j}$”之和。

    而$inom{n}{m}=inom{n-1}{m-1}+inom{n-1}{m}$,所以$w(i,j)=sum_{k=1}^{i}g(k)inom{i-1}{k-1}(w(i-k,j-1)+w(i-k,j))$,按$j$分层可整理成$frac{w(i,j)}{(i-1)!}=sum_{k=1}^{i}frac{g(k)}{(k-1)!}frac{w(i-k,j-1)+w(i-k,j)}{(i-k)!}$,是一个分治fft的形式。$g$可以多项式求逆或分治fft求。

  • 相关阅读:
    js实现选择切换
    Jquery操作select
    Mybatis 高级结果映射 ResultMap Association Collection
    jQuery的一些特性和用法
    利用JSONP解决AJAX跨域问题的原理与jQuery解决方案
    List转成Array 连个Array比较
    3.15
    Get 和 Post 方法的选择和URL的设计
    fd
    如何维护一个1000 IP的免费代理池
  • 原文地址:https://www.cnblogs.com/Blue233333/p/9187876.html
Copyright © 2011-2022 走看看