![](https://img-blog.csdnimg.cn/20201014180756927.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
组合数学
goto_1600
我何来寂寞,哪有寂寞可言。
展开
-
Monotonic Matrix (LGV)
题意:给定n,m,求如下满足定义,是矩阵并且取值只有0,1,2三种,行递增,列递增的方案数(mod 1e9+7)思路:如图,左上为0,中间为1,右下为2,也就是从0,0到n,m的类不相交路径个数,为什么是类不相交呢,因为是非严格不相交,蹭到边上的方案是可以的,刚学完LGV,能不能LGV处理呢,很可惜LGV只能处理不相交的路径个数,那么我们采用扩充点,把0,0映射到1,-1,把n,m映射到n+1,m-1,然后套LGV就行了,为什么呢?可以发现0,0到n,m的路径我们都是可以通过镜像来变成1,-1到n+原创 2021-10-01 17:00:24 · 262 阅读 · 0 评论 -
CF785D Anton and School - 2(范德蒙德行列式卷积)
题意:给定含有(和)的字符串,求带有((()))类似的子序列的方案数(左括号等于右括号)思路:很容易想到枚举每个左括号的最后一个位置,cnt代1~i-1中(的数量,cnt2代表后缀的)的数量那么显然答案就是∑i=1n[s[i]==(]∑j=0min(cnt,cnt2−1)C(cnt,cnt−j)∗C(cnt2,j+1)\sum_{i=1}^{n}[s[i]== (]\sum_{j=0}^{min(cnt,cnt2-1)} C(cnt,cnt-j)*C(cnt2,j+1)∑i=1n[s[i]==(]原创 2021-09-13 14:30:31 · 456 阅读 · 1 评论 -
P3223 [HNOI2012]排队 排列组合,python高精
题意:n个男生,m个女生,2个老师,求老师不能相邻,女生不能相邻的方案数。思路:先把老师当作男生对待,最后减去老师相邻的方案,可以用插板法将女生插进男生堆里,由于要高精度,懒得写,搞一手py哈哈答案就是不考虑老师-考虑老师的方案数import mathdef f(x): return math.factorial(x)def C(x,y): if(x<y): return 0 return f(x)//f(y)//f(x-y)a=input().split()n=int(a[原创 2021-09-11 09:53:46 · 267 阅读 · 0 评论 -
Add or Multiply 1 (第二类Strling 数)
题意:给定n个加数m个乘数求最后本质不同的多项式数量。思路:有一个性质,假设先单独讨论加法,对于某个数ai,我们假设加法和乘法组数为x和y,对于不同组之间的ai,无法构造出和刚才序列相同的多项式。那么启发我们思考,对于加法和乘法两个是独立的,加法组内无序,乘法组内也是无序,但单单对组数有要求,|x-y|<=1才可以,例如++−−++,−−++−−,−−++,++−−++ - - ++,--++--,--++,++--++−−++,−−++−−,−−++,++−−x和y是加法乘法的组数。而且组和.原创 2021-09-04 23:15:20 · 269 阅读 · 0 评论 -
D. Rescue Nibel!
题意:总共有n个线段,问选择k条线段,使得他们相交于一点的方案数。思路:用类似差分的思想,将每条线段的l和r+1放进数组里并且分别带有1和-1的权值,将数组按照坐标大小排序,如果坐标大小不同按照权制大小排序,权值小的放在前面,然后依次遍历下来,把方案定义为以第i个灯泡为末尾(即该灯泡的坐标在选的坐标里最大)的方案数,这些方案是不重不漏的,加起来就是答案了,然后模数不是质数,要用扩展欧几里得求,然后我忘了咋写了。#include<iostream>#include<cstring&g.原创 2020-09-26 13:28:56 · 414 阅读 · 0 评论 -
2019icpc 南昌站 --And and pair
iven an extremely large non-negative integer nn, you are asked to count the number of pairs (i,j)(i,j) of integers satisfying the following conditions:0\leq j\leq i\leq n0≤j≤i≤n;ii & n=in=i; andii & j=0j=0.Here & represents the bitwise AND原创 2020-09-14 11:16:39 · 266 阅读 · 0 评论