随笔分类 -  数学方法 -- 组合计数

摘要:【洛谷2791】幼儿园篮球题(第二类斯特林数,NTT) 题面 "洛谷" 题解 对于每一组询问,要求的东西本质上就是: i=0k(mi)(nmki)iL 如果没有后面那个部分,就是一个范德蒙恒等式,所以就要把这个iL直接拆掉。 然 阅读全文
posted @ 2019-07-06 11:31 小蒟蒻yyb 阅读(754) 评论(0) 推荐(0) 编辑
摘要:【51Nod1769】Clarke and math2(数论,组合数学) 题面 "51Nod" 题解 考虑枚举一个ik,枚举一个i,怎么计算iki的贡献。 把iik拆掉,维护一个长度为k的数组,表示ik1ik,对于 阅读全文
posted @ 2019-07-05 16:53 小蒟蒻yyb 阅读(335) 评论(0) 推荐(0) 编辑
摘要:[HNOI2019]多边形(模拟,组合计数) 题面 "洛谷" 题解 ~~突然特别想骂人,本来我考场现切了的,结果WA了几个点,刚刚拿代码一看有个地方忘记取模了。~~ 首先发现终止态一定是所有点都向n连边(看样例图解就知道了) 那么大力猜想一下第一问的答案一定是n3n号点直接相连的边 阅读全文
posted @ 2019-04-08 10:26 小蒟蒻yyb 阅读(832) 评论(7) 推荐(0) 编辑
摘要:【BZOJ5323】[JXOI2018]游戏(组合计数,线性筛) 题面 "BZOJ" "洛谷" 题解 显然要考虑的位置只有那些在[l,r]中不存在任意一个约数的数。 假设这样的数有x个,那么剩下的数有nx个。 枚举时间t,那么强制在t时刻放下x数中的最后一个, 那么这样子的 阅读全文
posted @ 2019-02-23 15:12 小蒟蒻yyb 阅读(306) 评论(0) 推荐(0) 编辑
摘要:【BZOJ5305】[HAOI2018]苹果树(组合计数) 题面 "BZOJ" "洛谷" 题解 考虑对于每条边计算贡献。每条边的贡献是size(nsize)。 对于某个点u,如果它有一棵大小为K的子树的话,考虑方案数。 首先要从剩下的nu个点中选出K个点作为这棵子树,那么选 阅读全文
posted @ 2019-02-19 22:20 小蒟蒻yyb 阅读(276) 评论(0) 推荐(1) 编辑
摘要:【UOJ 450】【集训队作业2018】复读机(生成函数,单位根反演) 题面 "UOJ" 题解 似乎是Anson爷的题。 d=1的时候,随便怎么都行,答案就是knd=2的时候,可以做一个dp,设f[i][j]表示前i个复读机选了j个时间的方案数。 阅读全文
posted @ 2019-01-17 22:43 小蒟蒻yyb 阅读(903) 评论(1) 推荐(0) 编辑
摘要:【BZOJ5416】【NOI2018】冒泡排序(动态规划) 题面 "BZOJ" "洛谷" "UOJ" 题解 考场推出了就是两个上升子序列,并且最长下降子序列长度不超过2。。。然后大力暴力状压dp混了44分。。。这个结论并不是很难证明,考虑一下冒泡排序的过程就好了。 实际上O(n2) 阅读全文
posted @ 2019-01-06 16:57 小蒟蒻yyb 阅读(564) 评论(0) 推荐(0) 编辑
摘要:【BZOJ3142】[HNOI2013]数列(组合计数) 题面 "BZOJ" "洛谷" 题解 唯一考虑的就是把一段值给分配给k1天,假设这k1天分配好了,第i天是ai,假设Sum=ai。那么这一种分配方案的贡献就是nSum。 而分配方式一共有$m^{k 1 阅读全文
posted @ 2019-01-05 13:43 小蒟蒻yyb 阅读(245) 评论(0) 推荐(0) 编辑
摘要:【BZOJ4005】[JLOI2015] 骗我呢(容斥,组合计数) 题面 "BZOJ" "洛谷" 题解 "lalaxu" cpp include using namespace std; define MOD 1000000007 define MAX 3000300 void add(int &x 阅读全文
posted @ 2019-01-03 17:16 小蒟蒻yyb 阅读(460) 评论(0) 推荐(0) 编辑
摘要:【BZOJ4830】[HNOI2017]抛硬币(组合计数,拓展卢卡斯定理) 题面 "BZOJ" "洛谷" 题解 暴力是啥? 枚举A的次数和B的次数,然后直接组合数算就好了:$\displaystyle \sum_{i=0}^a{a\choose i}\sum_{j=0}^{i 1}{b\ch 阅读全文
posted @ 2018-12-26 16:31 小蒟蒻yyb 阅读(438) 评论(0) 推荐(0) 编辑
摘要:【Luogu4931】情侣?给我烧了! 加强版(组合计数) 题面 "洛谷" 题解 "戳这里" 忽然发现我自己推的方法是做这题的,也许后面写的那个才是做原题的QwQ。 cpp include include using namespace std; define MAX 5000010 define 阅读全文
posted @ 2018-12-25 21:57 小蒟蒻yyb 阅读(227) 评论(0) 推荐(0) 编辑
摘要:【Luogu4921】情侣?给我烧了!(组合计数) 题面 "洛谷" 题解 很有意思的一道题目。 直接容斥?怎么样都要一个平方复杂度了。 既然是恰好k对,那么我们直接来做: 首先枚举k对人出来(nk),然后枚k排座位出来$\displayst 阅读全文
posted @ 2018-12-25 21:50 小蒟蒻yyb 阅读(331) 评论(0) 推荐(0) 编辑
摘要:【BZOJ2281】[SDOI2011]黑白棋(博弈论,动态规划) 题面 "BZOJ" "洛谷" 题解 先看懂这题目在干什么。 首先BZOJ上面的题面没有图,换到洛谷看题就有图了。 不难发现都相邻的两个异色棋子放在一起的时候,此时的先手无论怎么动,后手直接把棋子靠上去,这样子一定是先手先无法移动。即 阅读全文
posted @ 2018-11-04 15:56 小蒟蒻yyb 阅读(558) 评论(0) 推荐(0) 编辑
摘要:【BZOJ2227】[ZJOI2011]看电影(组合数学,高精度) 题面 "BZOJ" "洛谷" 题解 这题太神仙了。 首先$K include include using namespace std; inline int read() { int x=0;bool t=false;char ch 阅读全文
posted @ 2018-10-30 22:01 小蒟蒻yyb 阅读(352) 评论(0) 推荐(0) 编辑
摘要:【BZOJ2425】[HAOI2010]计数(组合数学) 题面 "BZOJ" "洛谷" 题解 很容易的一道题目。 统计一下每个数位出现的次数,然后从前往后依次枚举每一位,表示前面都已经卡在了范围内,从这一位开始比目标小。 对于长度小于当前数的个数,我们可以默认它们有前导零就行了。 cpp inclu 阅读全文
posted @ 2018-10-30 19:13 小蒟蒻yyb 阅读(353) 评论(0) 推荐(0) 编辑
摘要:【BZOJ2111】[ZJOI2010]排列计数(组合数学) 题面 "BZOJ" "洛谷" 题解 就是今年九省联考D1T2的弱化版? 直接递归组合数算就好了。 注意一下模数可以小于n,所以要存一下乘了几个零才行。 cpp include include using namespace std 阅读全文
posted @ 2018-10-29 21:49 小蒟蒻yyb 阅读(323) 评论(0) 推荐(0) 编辑
摘要:【BZOJ1856】[SCOI2010]字符串(组合数学) 题面 "BZOJ" "洛谷" 题解 把放一个1看做在平面直角坐标系上沿着x正半轴走一步,放一个0看做往y轴正半轴走一步,最终的重点就是(n,m),限制就是不能到达y=x上面的部分。 发现这样不好算,我们先考虑一个另外 阅读全文
posted @ 2018-10-23 15:44 小蒟蒻yyb 阅读(385) 评论(0) 推荐(0) 编辑
摘要:【BZOJ1485】[HNOI2009]有趣的数列(组合数学) 题面 "BZOJ" "洛谷" 题解 从小往大填数,要么填在最小的奇数位置,要么填在最小的偶数位置。 偶数位置填的数的个数不能超过奇数位置填的数的个数。 好的,卡特兰数。 诶,woc,我不会卡特兰数啊。行,来学一下。 $H(0)=H(1) 阅读全文
posted @ 2018-10-10 20:20 小蒟蒻yyb 阅读(446) 评论(0) 推荐(0) 编辑
摘要:【BZOJ1227】[SDOI2009]虔诚的墓主人(线段树) 题面 "BZOJ" "洛谷" 题解 显然发现答案就是对于每一个空位置,考虑上下左右各有多少棵树,然后就是这四个方向上树的数量中选K棵出来的方案数的乘积。显然离散化之后对于答案没有任何影响,所以直接离散化。 然而这样的点数还是$O(n 阅读全文
posted @ 2018-10-05 20:35 小蒟蒻yyb 阅读(531) 评论(0) 推荐(0) 编辑

点击右上角即可分享
微信分享提示