组合数学
文章平均质量分 94
Coco_T_
东南大学本科毕业生,浙江大学在读研究生
展开
-
bzoj2467 [中山市选2010]生成树
Description有一种图形叫做五角形圈。一个五角形圈的中心有1个由n个顶点和n条边组成的圈。在中心的这个n边圈的每一条边同时也是某一个五角形的一条边,一共有n个不同的五角形。这些五角形只在五角形圈的中心的圈上有公共的顶点。如图0所示是一个4-五角形圈。 现在给定一个n五角形圈,你的任务就是求出n五角形圈的不同生成树的数目。还记得什么是图的生成树吗?一个图的生成树是保留原图的所有顶点以及顶原创 2017-08-31 09:51:05 · 294 阅读 · 0 评论 -
codeforces 453 A. Little Pony and Expected Maximum(概率期望+组合数学+快速幂)
题目链接题目描述: 抛m面色子n次,得分是其中得到的最大值,求期望分析: 我觉得可以直接算出以x为最大值的方案数 期望=总贡献/概率f[i]f[i]f[i]表示iii是最大值的概率 f[i]=in−(i−1)nmn=inmn−(i−1)nmn=(im)n−(i−1m)nf[i]=in−(i−1)nmn=inmn−(i−1)nmn=(im)n−(i−1m)nf[i]={i^n-{...原创 2018-03-09 09:17:14 · 279 阅读 · 0 评论 -
poj1737 Connected Graph(n点无向连通图)
题目链接题目描述: 给出n个点,求n个点的无向连通图分析: 巨坑啊经典题目,有两种方法:总方案数-不合法方案nnn个点的完全图有C(n,2)=n(n−1)2C(n,2)=n(n−1)2C(n,2)={n(n-1) \over 2}条边,显然就有2C(n,2)2C(n,2)2^{C(n,2)}种子图(枚举每条边是否选择)设f[i]f[i]f[i]表示每个点都和点1相连...原创 2018-03-15 18:57:05 · 4131 阅读 · 0 评论 -
bzoj3456 城市规划(组合数学+NTT+多项式求逆)
Description刚刚解决完电力网络的问题,阿狸又被领导的任务给难住了 刚才说过,阿狸的国家有n个城市,现在国家需要在某些城市对之间建立一些贸易路线,使得整个国家的任意两个城市都直接或间接的连通。为了省钱,每两个城市之间最多只能有一条直接的贸易路径。对于两个建立路线的方案,如果存在一个城市对,在两个方案中是否建立路线不一样,那么这两个方案就是不同的,否则就是相同的。现在你需要求出一共有...原创 2018-03-15 22:00:57 · 260 阅读 · 0 评论 -
bzoj4710 [Jsoi2011]分特产(容斥原理)
题目链接分析: 这道题的限制其实挺不明显的,应该是“每个人都至少有一个” 也就是说对于所有的物品,将其划分成n部分,每部分不能为空,问总的方案数 我们把每一种特产分开考虑 把mmm个特产分成nnn份,简单的我们可以利用插板法:C(m+n−1,n−1)C(m+n−1,n−1)C(m+n-1,n-1) ans=∏mi=1C(ai+n−1,n−1)ans=∏i=1mC(ai+n−1,n...原创 2018-03-13 09:16:55 · 178 阅读 · 0 评论 -
codeforces 285 E. Positions in Permutations(容斥原理+dp)
题目链接题目描述:一个111到nnn的排列p[i]p[i]p[i],一个位置是好位置当且仅当|p[i]−i|=1|p[i]−i|=1|p[i]-i|=1,求恰好有kkk个好位置的排列数分析: 首先我们可以选出kkk个位置,强制这kkk个位置成为good position 其余的数任意排列,这样我们就知道 good position 数大于等于k的排列数了我们首先考虑如何计算:选出i...原创 2018-03-13 11:30:46 · 395 阅读 · 0 评论 -
bzoj3812 主旋律(容斥原理+状压dp)
题目链接分析:dada的题解有多少个边的子集删去之后整个图仍然强联通=>整个图有多少个强联通子图 强联通子图的个数比较难计算,我们考虑进行进一步的转化: 强联通子图的个数=>子图个数-不强联通的子图个数不强联通的子图有什么特点呢?将强连通分量缩点后会形成一个节点数>=2的DAG 那么我们就考虑这个子问题:一些点构成 DAG 的方案数设原图为GGG,点集为...原创 2018-03-13 15:07:21 · 406 阅读 · 0 评论 -
bzoj4361 isn(dp+树状数组+容斥原理)
题目链接分析: 样例试了好久。。。发现删除是有顺序的 1:7 5 2:5 7 3:7 3 4:3 7 5:5 3 6:3 5 7:1 7 5 8:1 5 7 9: 7 1 510: 5 1 711: 1 5 312: 1 3 513: 3 1 514: 3 5 115: 5 1 316: 5 3 1如果我们枚举删除的个数 那么任何一个方案都不可能是...原创 2018-03-14 07:11:30 · 303 阅读 · 0 评论 -
bzoj3622 已经没有什么好害怕的了(dp+容斥原理)
题目链接题目描述: 两种元素a,ba,ba,b,各有n个,两两配对,求a[i]>b[i]a[i]>b[i]a[i]>b[i]的组数恰好比a[i]<b[i]a[i]<b[i]a[i]kkk的方案数分析: 有点受这道题的启发 由题面可得,a[i]>b[i]a[i]>b[i]a[i]>b[i]的组数应该为n+k2n+k2n+k \over 2 (在这里...原创 2018-03-14 08:42:53 · 253 阅读 · 0 评论 -
bzoj3771 Triple(生成函数+容斥+FFT)
Description我们讲一个悲伤的故事。从前有一个贫穷的樵夫在河边砍柴。这时候河里出现了一个水神,夺过了他的斧头,说:“这把斧头,是不是你的?”樵夫一看:“是啊是啊!”水神把斧头扔在一边,又拿起一个东西问:“这把斧头,是不是你的?”樵夫看不清楚,但又怕真的是自己的斧头,只好又答:“是啊是啊!”水神又把手上的东西扔在一边,拿起第三个东西问:“这把斧头,是不是你的?”樵夫还是看...原创 2018-02-28 21:29:54 · 620 阅读 · 0 评论 -
组合数学之六 —— 差分序列&Stirling数
前言:好久没有学数学了 前几天loli给高一的讲课涉及到了本章内容,所以来普及一波差分序列基本概念设 是一个序列,我们定义的(一阶)差分序列为: 很简单吧,就是我们经常使用的差分啊 但是我们在叙述ta的定义的时候,加了一个词:一阶 有一阶就有二阶,有二阶就有三阶~ppp阶啊: ppp阶差分序列: 我们定义一个序列的0阶差分序列就是ta自己:我们可以把一个序...原创 2018-01-20 21:33:56 · 6468 阅读 · 0 评论 -
组合数学之一 —— 计数问题基础
排列和组合是最基本的计数技巧。基础知识 加法原理: 做一件事有n种方法,第i种方法有pi种方案,则一共有p1+p2+…+pn种方案 互不影响的事件之间通常使用加法原理 乘法原理: 做一件事有n个步骤,第i个步骤有pi种方案,则一共有p1*p2*…*pn种方案,乘法原理是加法原理的特殊情况。二者都可以用于递推。注意:使用加法原理的关键是分类:各类别之间必须不重不漏原创 2017-10-28 16:42:33 · 2491 阅读 · 0 评论 -
组合数学之二 —— 容斥原理及应用
这会是一个大型连载blog 内容主要来自《组合数学》+博主的思考容斥原理之前在“组合数学一”中提到过容斥原理 我们在这里直接给出推论: 设Ai表示在集合S中拥有特征Pi的元素子集,则集合S中至少具有性质P1,P2,P3,…,Pm之一的对象个数由下式表示: 在这一节中,有一个经典问题:∞ 例一确定多重集合T={ 3*a,4*b,5*c }的10组合的数目这道题我们要充分利用容斥原理:原创 2017-12-20 15:48:15 · 3525 阅读 · 1 评论 -
组合数学之四 —— 鸽巢原理
嘿,大家统统围过来,给你们看一个很棒的东西,那是一种很酷很辣很炫很Top的东西:基本知识 如果要把n+1个物品放进n个盒子中,那么至少有一个盒子包含两个或更多东西这个就是鸽巢原理,本文完原理很简单,我们提出两个推论:如果将n个物体放入n个盒子并且没有一个盒子是空的,那么每个盒子恰好有一个物体如果将n个物体放入n个盒子中并且没有一个盒子被放入多于一个的物体,那么每个盒子里有一个物体看一下例原创 2017-12-22 19:45:01 · 2361 阅读 · 0 评论 -
bzoj4086 [Sdoi2015]travel(分类讨论+容斥原理)
题目链接分析: 第一眼看到这道题的时候,以为是一道状压dp(毕竟k的范文很小啊) 于是设计了许多奇怪的状态,但是由于nk的范围小是有作用的,我们考虑分类讨论K=2:显然答案就是原连通矩阵K=3:枚举起点i,从起点开始枚举两条前后连接的边,维护连通性 复杂度:O(m^2)void solve3(){ for (int i=1;i<=n;i++)原创 2018-01-11 19:09:56 · 486 阅读 · 0 评论 -
组合数学之五 —— 莫比乌斯反演
前言: 新年第一个工作日,为什么这么颓这么困。。。学长退役的时候,曾经问过我:你们都知道我们的blog吗 我表示Of course今天在网上翻到了abclzr的blog 想当年莫比乌斯反演是TA爷给学长们讲的 虽然听过天宇哥哥,姜爷和丁队的课,然而对于这种高级数论,不敢说掌握(甚至连理解都做不到)基础知识学长blog的第一部分是:枚举除法不要以为这是c++入门操作而不xi看 在做了一部分反原创 2018-01-02 09:49:26 · 1400 阅读 · 0 评论 -
1.14hu测 T1(组合数学)
分析: 一开始先打了一个暴力, 感觉应该有一定的规律,于是就开始打表找规律 YY了将近一个小时,终于搞出来了一个规律,但好像不具有普适性 于是就把玄学和暴力结合了一下,交上去评测发现自己猜的结论完全不对(幸好写了暴力。。。)首先我们可以发现,对于题目描述的有序集合,第m位上的数字范围在[m,n-(k-m)]内 (在枚举集合的时候,只要保证后面的元素大于前面的元素 就可以不重不漏的得到所有原创 2018-01-14 15:39:14 · 296 阅读 · 0 评论 -
充满bug的hu测(1.14)
上午loli只给了我们三个半小时 给了我们三道没有文件名且来路不明的题 评测的时候没有“忽略行末空格和回车”,导致分数非常的鬼。。。三道题的码量都比较小 但是思维难度还是比较大的T1T2 分析: 考虑每条边的贡献 每条边可以把整棵树分成两部分:设左边有aa个乘客bb辆车,右边有cc个乘客dd辆车 那么这条边的贡献系数就是min(a,d)+min(b,c原创 2018-01-14 17:43:13 · 350 阅读 · 0 评论 -
组合数学之三 —— 生成函数
前言:我觉得生成函数是一个很玄妙的东西知识铺垫我们在这里简单的介绍一下几种为人熟知的数列(给出公式及部分证明): 算术数列,其中的每一项比前一项大一个常数q(等差数列) 几何数列,其中的每一项是前一项的常数q倍(等比数列)一 . 算术数列An=A0+nq Sn=( n-1 ) * A0+( q * n *(n+1))/2二 . 几何数列An=A...原创 2017-12-20 19:02:14 · 16358 阅读 · 11 评论 -
胖爷XP的hu测 T1.水晶(Prufer数列+dp)
版权属于XP,想要引用此题(包括题面)的朋友请联系博主 分析: 假如我们从nnn个点钟选出了sss个点,那么这sss个点的合法连通状态一定是一棵树每个结点都有一个最大度数(也就是说每个结点连出的边数<=ai<=ai<=<==ai=ai=a_i的情况问题转化成:已知s个点,每个点的度数aiaia_i,求能形成的不同形态树的数量关于这个问题,有一个有力的...原创 2018-03-20 17:35:40 · 243 阅读 · 0 评论