OwO 良心的FFT练手题,包含了所有的多项式基本运算呢

其中一部分解法参考了myy的uoj的blog

二分图计数 1:

实际是求所有图的二分图染色方案和

我们不妨枚举这个图中有多少个黑点

在n个点中选出k个黑点的方案为C(n,k)

白点和黑点之间任意连边,方案为2^(k*(n-k))

所以得到f(n)=sigma(C(n,k)*2^(k*(n-k))

由于本题只需要求解一个f(n),枚举并计算就可以了

更高端一点的做法是这样的:

我们可以利用在<DAG计数问题 题解报告>中提到的技巧将n*k拆开

即n*k=n^2/2+k^2/2-(n-k)^2/2

这样我们会得到一个可以FFT的形式,之后做一遍FFT就可以求出1-n的所有f值了

二分图计数 2:

实际是求所有图中二分图的个数

设一个二分图有k个联通块,那么对于染色方案数的贡献就是2^k

设n个点的二分图的生成函数为多项式g,上一个问题的生成函数为多项式f

由于k个联通块的子集有2^k个,所以不难发现存在g^2=f

因为任意一个二分图都会在卷积的过程中被重复计算2^k次

这样我们就得到g=sqrt(f) 多项式开根即可

二分图计数 3:

实际是求所有图中联通二分图的个数

设n个点的联通二分图的生成函数为h

由于二分图是由若干个联通二分图组成的

所以得到e^h=g,变形得h=ln(g),多项式求ln即可

考虑一种更好的做法

我们定义n个点的联通二分图的染色方案总数为多项式t

显然h=t/2,问题转化成如何求t

同理我们可以得到e^t=f,变形得t=ln(f),那么我们对f做多项式求ln之后把系数除以2即可

所以进而我们也可以得到<二分图计数 2>的另一种做法

就是利用上面的方法求出h之后做多项式求exp就可以求解出g了

cojs 二分图计数问题1-3 题解报告的更多相关文章

  1. cojs QAQ的图论题 题解报告

    话说这个题目应该叫做 斯特林数的逆袭 QAQ 先说一说部分分的算法 1.n<=5 直接暴力搜索就可以了 2.k=0的时候不难发现任意一张图的价值都是n,问题转化为计算有多少种图,显然是2^C(n ...

  2. cojs 简单的01串 题解报告

    题意显然是求n位二进制串中不大于其逆序串,取反串,逆序取反串的所有串按字典序排序后的第k个 由于n很小,k很大所以我们可以考虑逐位确定 问题转化为了求方案数,这显然是可以用数位DP做的 设f[len] ...

  3. cojs 简单的数位DP 题解报告

    首先这道题真的是个数位DP 我们考虑所有的限制: 首先第六个限制和第二个限制是重复的,保留第二个限制即可 第五个限制在转移中可以判断,不用放在状态里 对于第一个限制,我们可以增加一维表示余数即可 对于 ...

  4. cojs 强连通图计数1-2 题解报告

    OwO 题目含义都是一样的,只是数据范围扩大了 对于n<=7的问题,我们直接暴力搜索就可以了 对于n<=1000的问题,我们不难联想到<主旋律>这一道题 没错,只需要把方程改一 ...

  5. 2015浙江财经大学ACM有奖周赛(一) 题解报告

    2015浙江财经大学ACM有奖周赛(一) 题解报告 命题:丽丽&&黑鸡 这是命题者原话. 题目涉及的知识面比较广泛,有深度优先搜索.广度优先搜索.数学题.几何题.贪心算法.枚举.二进制 ...

  6. 题解报告:hdu 1398 Square Coins(母函数或dp)

    Problem Description People in Silverland use square coins. Not only they have square shapes but also ...

  7. 题解报告:hdu 2069 Coin Change(暴力orDP)

    题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=2069 Problem Description Suppose there are 5 types of ...

  8. 题解报告:hdu 1028 Ignatius and the Princess III(母函数or计数DP)

    Problem Description "Well, it seems the first problem is too easy. I will let you know how fool ...

  9. CF Educational Round 78 (Div2)题解报告A~E

    CF Educational Round 78 (Div2)题解报告A~E A:Two Rival Students​ 依题意模拟即可 #include<bits/stdc++.h> us ...

随机推荐

  1. 使用python语言操作MongoDB

    MongoDB是一个跨平台的NoSQL,基于Key-Value形式保存数据.其储存格式非常类似于Python的字典,因此用Python操作MongoDB会非常的容易. pymongo的两种安装命令 p ...

  2. Navicat 同步数据库中数据

     Navicat工具同步两个数据库中的数据 第一步在我们的电脑里面打开navicat软件,打开要复制表的数据库,如下图所示:   第二步点击上方的“工具->数据传输”,如下图所示:   第三步进 ...

  3. 百度地图InfoWindow弹窗圆角

    效果如下 使用CSS样式 /*地图标题*/ .BMap_pop div:nth-child(1) div { border-radius: 8px 0 0 0; } .BMap_pop div:nth ...

  4. java 类中的细节

    java 中类: 类是用于描述统一类型的对象的一个抽象的概念,类中定义了这一类对象所因具有的静态和动态属性. 举例: 瓶子静态: 有一个口.长长的形状-->java类中的成员变量动态属性: 可以 ...

  5. CCCC L2-017. 人以群分 贪心

    https://www.patest.cn/contests/gplt/L2-017 题解:贪心,一点小数学 坑:XJB改下标改错了 #include <iostream> #includ ...

  6. [Error] 'for' loop initial declarations are only allowed in C99 or C11 mode

    #include <stdio.h> #include <stdlib.h> #define LIST_INIT_SIZE 100 //线性表存储空间的初始分配量 #defin ...

  7. Docker,docker-machine,docker-composer

    https://docs.docker.com/engine/installation/mac/ Docker值得关注的特性文件系统隔离:每个进程容器运行在一个完全独立的根文件系统里.资源隔离:系统资 ...

  8. 火币Huobi API

    本文介绍火币Huobi API REST API 简介 火币为用户提供了一套全新的API,可以帮用户快速接入火币PRO站及HADAX站的交易系统,实现程序化交易. 访问地址 适用站点 适用功能 适用交 ...

  9. 洛谷P4035 球形空间产生器 [JSOI2008] 高斯消元

    正解:高斯消元 解题报告: 链接! 昂开始看到以为是,高斯消元板子题? 开始很容易想到的是,虽然是多维但是可以类比二维三维列出式子嘛 但是高斯消元是只能处理一元问题的啊,,,辣怎么处理呢 对的这就是这 ...

  10. Java-SpringMvc-@ResponseBody返回中文字符串乱码

    第一种.注解 @RequestMapping(value = "/test.do", method = {RequestMethod.GET},produces = "t ...