[集训队作业2013] 城市规划(NTT)】的更多相关文章

传送门 题目大意 求出\(n\)个点的简单(无重边无自环)有标号无向连通图数目.\(n\leq 130000\). 题解 题意非常简单,但做起来很难.这是道生成函数经典题,博主当做例题学习用的.博主看到题解后感到非常惊讶:生成函数还能这么玩! 步入正题.首先我们要定义生成函数\(F(x)=\sum\limits_{i\geq 0}f_i\dfrac{x^i}{i!}\),其中\(f_i\)表示\(i\)个点无向连通图数目. 定义生成函数\(G(x)=\sum\limits_{i\geq 0}\d…
Description 求\(n\)个点无重边.无自环.带标号的无向联通图个数,对\(1004535809\)(\(479 \times 2^{21} + 1\))取模.\(n \le 130000\) Solution 模数好像是在提示了......这个模数非常适合\(NTT\). 还是想题吧.首先问自己一个问题:不要求联通会不会?不会 不连通的话最多有\(\binom{n}{2}\)条边,总方案数就是这些边选不选的问题,即\(2^{\binom{n}{2}}\). 我们令不要求联通的\(n\…
题目 令\(f_i\)表示n个点的答案.考虑容斥,用所有连边方案减去有多个连通块的方案.枚举1号点所在的连通块大小: \(f_i=2^{i(i-1)/2}-\sum_{j>0}^{i-1}f_j \binom{i-1}{j-1}2^{(i-j)(i-j-1)/2}\) \(\binom{i-1}{j-1}\)表示1号点必须在选出的连通块中,剩下的i-1个点中再选出j-1个.\(2^{(i-j)(i-j-1)/2}\)是剩下的点随意连边,但不跟选出的连通块连边的方案数. \[\begin{alig…
\(\mathcal{Description}\)   link.   求 \(n\) 个结点的简单无向连通图个数,对 \(1004535809~(479\times2^{21}+1)\) 取模.   \(n\le1.3\times10^5\). \(\mathcal{Solution}\)   很简单的一道生成函数题.做完之后可以尝试一下点双和边双连通图计数 w.   令 \(f_i\) 为 \(i\) 个结点的简单无向图个数.显然 \(f_i=2^{i\choose 2}\).则其生成函数…
UOJ #449. [集训队作业2018]喂鸽子 小Z是养鸽子的人.一天,小Z给鸽子们喂玉米吃.一共有n只鸽子,小Z每秒会等概率选择一只鸽子并给他一粒玉米.一只鸽子饱了当且仅当它吃了的玉米粒数量\(≥k\). 小Z想要你告诉他,期望多少秒之后所有的鸽子都饱了. 假设答案的最简分数形式为\(\frac{a}{b}\),你需要求出\(w\),满足\(a≡b⋅w \pmod{998244353}(0≤w<998244353).\) \(n\leq 50,k\leq 1000\) Orz 首先可以用\(…
#428. [集训队作业2018]普通的计数题 模型转化好题 所以变成统计有标号合法的树的个数. 合法限制: 1.根标号比子树都大 2.如果儿子全是叶子,数量B中有 3.如果存在一个儿子不是叶子,数量A中有 然后考虑DP 直接枚举根的儿子的情况 cdq分治NTT还是很恶心的 不光是自己卷自己,还是互相卷 进行一番化简和平移之后,可以转化为cdq分治NTT的形式: 怎么好做怎么来. 反正我最后推的式子有如下特点(式子就不写了): 为了方便,钦定g[0],f[0],g[1],f[1]都是0 对于f,…
题目链接: [集训队作业2018]小Z的礼物 题目要求的就是最后一个喜欢的物品的期望得到时间. 根据$min-max$容斥可以知道$E(max(S))=\sum\limits_{T\subseteq S}^{ }(-1)^{|T|-1}E(min(T))$ 那么只需要知道每个子集中最早得到的物品的期望时间即可得出答案. 对于每个子集,最早得到的物品的期望时间就是一次选择能得到这个子集中元素的概率的倒数. 用一次选择能得到这个子集中的元素的方案数除上总方案数(每次共有$2*n*m-n-m$种选择方…
[UOJ#450][集训队作业2018]复读机(生成函数,单位根反演) 题面 UOJ 题解 似乎是\(\mbox{Anson}\)爷的题. \(d=1\)的时候,随便怎么都行,答案就是\(k^n\). \(d=2\)的时候,可以做一个\(dp\),设\(f[i][j]\)表示前\(i\)个复读机选了\(j\)个时间的方案数. 然后枚举当前这个复读机复读的次数,得到: \[f[x][j]=\sum_{i=0}^{j}[2|i]{n-j+i\choose i}f[x-1][j-i]\] 化简啥的之后…
[UOJ#422][集训队作业2018]小Z的礼物(min-max容斥,轮廓线dp) 题面 UOJ 题解 毒瘤xzy,怎么能搬这种题当做WC模拟题QwQ 一开始开错题了,根本就不会做. 后来发现是每次任意覆盖相邻的两个,那么很明显就可以套\(min-max\)容斥. 要求的就是\(max(All)\),而每个集合的\(min\)是很好求的. 如果直接暴力枚举集合复杂度就是\(2^{cnt}cnt\). 仔细想想每个子集我们要知道的是什么,只需要知道子集大小来确定前面的容斥系数,还需要知道覆盖子集…
#418. [集训队作业2018]三角形 和三角形没有关系 只要知道儿子放置的顺序,就可以直接模拟了 记录历史最大值 用一个pair(a,b):之后加上a个,期间最大值为增加b个 合并? A1+A2=(a1+a2,max(b1,a1+b2)) 放置顺序考虑贪心 比较: A放在B前面(和父亲进行合并)当且仅当(C=A+B).b<(D=B+A).b 分A.a和B.a的正负进行讨论 初始的pair:(w[x]-∑w[son[x]],w[x])把儿子会都扔掉 初始的pair放进堆里,取n-1次,和父亲合…