• wqy的C题


    wqy的C题

    毒瘤!

    题意:

    你有一张 $ n $ 个点 $ m $ 条边的无向图。
    你想在这张图上添加 $ n $ 条有向边,每一条有向边连接两个点 $ u,v $ ,你需要保证 $ u,v $ 在原图上不联通,且每一个点刚好作为一条有向边的起始点和另一条有向边的终止点。
    注意一个点到自身也算联通。

    解法:

    1.10pts 观察到有一个点是完全图,所以直接输出 $ 0 $ 就有10分
    2.40pts 当 $ m=0 $ 的时候,考虑错排公式的推导过程,这个图就可以转化成一个错排经典模型
    3.50pts = 40pts + 10pts。
    4.100pts 考虑容斥。

    当连通块大小不是1的时候,我们设 $ f_{i,j} = sum^{size_i}{k=0}f{i-1,j-k}g_{size_i,k} $
    其中 $ g_{i,j} $ 表示大小为 $ i $ 的连通块中已定 $ j $ 个点的方案数。
    然后考虑 $ g_{i,j} $ 怎么算。首先选 $ j $ 个点,然后还要是的它们连向自己所在的连通块,所以 $ g_{i,j}=C_i^ji(i-1) cdots (i-j+1) $ 。前面的组合数表示选出若干个点,后面是排列求方案数。
    我们可以 $ O(1) $ 的预处理阶乘 ,那么 $ g_{i,j} = C_i^j frac{i!}{(i-j)!}$
    时间复杂度是 $ n sum size_i = O(n^2) $ 。

    CODE:

    //待填坑
    
  • 相关阅读:
    CheckBox单选功能
    DOTNET
    常用命令行
    不能调试的问题的解决
    url字符串中含有中文的处理
    案例:星移eWorkflow.net系统
    使用正则表达式求完整路径中的文件名
    缺少一个***.resource的报告的解决
    Mapx中的图元移动
    Distance计算的距离随经纬度不同
  • 原文地址:https://www.cnblogs.com/Repulser/p/11409463.html
Copyright © 2020-2023  润新知