排列组合
文章平均质量分 57
WerKeyTom_FTD
我是一只来自中山纪念中学高三的oier,请多多指教
展开
-
[2017计蒜之道复赛]商汤智能机器人
题目大意从(0,0)出发,每次行走向量有(1,1),(2,0),(1,-1)。 求到(n,m)的方案数。 n,m 1e18。模数p是1e5+3。做法先转45度,并收缩1/2。 那么此时行走向量有(1,0),(1,1),(0,1)。 我们可以给出此时(0,0)到(n,m)的结论: ∑ni=0CinCim2i∑i=0nCniCmi2i\sum_{i=0}^nC_n^iC_m^i2...原创 2018-03-29 15:40:37 · 674 阅读 · 0 评论 -
[JZOJ5130][51nod1446][SDOI省队集训2017]苹果树
题目描述有N个点(N<=40)标记为0,1,2,…N-1,每个点i有个价值val[i],如果val[i]=-1那么这个点被定义为bad,否则如果val[i] >=0那么这个点为定义为good。现在给这N个点间连上N-1条边,使它们构成一个生成树,定义树中的点为great点当且仅当这个点本身是good点且与其相邻的点中至少有另一个good点。树的价值等于树中所有great点的价值和。定义限制价值树是指原创 2017-06-02 21:16:24 · 897 阅读 · 0 评论 -
数字格
题目描述菁菁堂有一块数字格,那是王解体最喜欢去的地方。 传说中,这条气势磅礴的数字格,有N行N列,每一个格子里均有一个数。 敢于挑战自己的王解体决定来挑战这道通过率为百分之九十九的题目。 格子的第一行及第一列均是给定的: F[k,1]=l[k](k=1,2,3,…,N)F[k,1]=l[k](k=1,2,3,…,N) F[1,k]=t[k](k=1,2,3,…,N)F[1,k]=t[k](原创 2017-04-06 09:52:05 · 750 阅读 · 0 评论 -
中位数
题目大意定义一个序列a的特征值: 如果n=1则a[1]即为特征值 否则构造序列b,bi为ai、ai-1、ai+1的中位数。 a的特征值等于b的特征值。 求特征值为k的长度为n的排列a有多少种。做转化为>=k 那么只有0和1 从中间0101交替往两边对称,直到不对称时,两个数是多少决定了特征值是0还是1。 因此可以枚举对称长度,剩余组合数。#include<cstdio>#includ原创 2017-04-18 11:20:40 · 511 阅读 · 0 评论 -
最长路径
题目描述在Byteland 一共有n 个城市,编号依次为1 到n,它们之间计划修建n(n-1)/2条单向道路,对于任意两个不同的点i 和j,在它们之间有且仅有一条单向道路,方向要么是i 到j,要么是j 到i。换句话说,这是一个n 个点的竞赛图。 Byteasar 居住在1 号城市,他希望从1 号城市出发,沿着单向道路不重复地访问一些城市,使得访问的城市数尽可能多。 请写一个程序,帮助Byteas原创 2017-04-18 11:11:02 · 1585 阅读 · 0 评论 -
[bzoj3283]运算器
题目大意数论题三合一。 第一问求yz%py^z\% p 第二问求yx%p=zy^x\%p=z的最小非负整数x 第三问求Cyz%pC_z^y\%p第一问谁都会做第二问大步小步法。 假设解决这样一个问题 ax≡b(modp)a^x\equiv b(\mod p) 首先考虑a与p互质的情况。那么显然是有循环节的。只需要考虑p以内。 设x=Ap√−BA\sqrt p-B aAp√−B≡b(m原创 2017-04-08 11:57:49 · 625 阅读 · 0 评论 -
[CF785D]Anton and School - 2
题目大意一个括号序列,问有多少非空子序列是回文合法括号序(这个回文是几何回文,如(()))。瞎做可以枚举最后一个左括号,假如它左边有A个左括号,右边有B个右括号。 贡献为∑Ct−1A∗CtB=∑Ct−1A∗CB−tB\sum C_A^{t-1}*C_B^t=\sum C_A^{t-1}*C_B^{B-t} 从组合数的意义去考虑,相当于从A+B个数中选B-1个数。 也可以这样考虑。 (1+x)原创 2017-04-07 16:07:41 · 687 阅读 · 0 评论 -
B君的宴请
题目描述旋转考虑只旋转。 如果旋转i下,容易知道形成(n,i)个环,每个环大小为n/(n,i),而我们需要k个,因此需要选k(n,i)/n个,在(n,i)个里,且必须互不相邻(包括首尾),这个可以考虑组合数算。 一般化,长度为n的环选出k个不相邻,考虑把n-k个数塞进k个数里,两两间必须塞至少一个,然后讨论最前至少塞1个最后不塞最前不塞最后至少塞1个以及最前最后都至少塞一个,鸽笼原理组合数即可。原创 2017-01-20 16:42:52 · 462 阅读 · 0 评论 -
[51nod 1222]最小公倍数计数
题目大意求有多少对a和b满足a<=b且l<=[a,b]<=r数论题区间[l,r]答案等于[1,r]-[1,l-1] a<=b暂且不考虑。为了方便,接下来都不写下取整,出现除法即为整除。 ∑ni=1∑nj=1[ij(i,j)<=n]\sum_{i=1}^n\sum_{j=1}^n[\frac{ij}{(i,j)}<=n] ∑nd=1∑ni=1∑nj=1[(i,j)=d]∗[ijd<=n]\sum原创 2017-01-17 22:35:51 · 718 阅读 · 0 评论 -
[bzoj4931][SDOI省队集训2017]塔
题目描述DP感觉这是一种套路题,自己见得太少了…… 首先,假如我们定了塔与塔间的相对顺序,就可以知道相邻至少长度的和s,于是得到t=L-s-1,那么答案容易发现是一堆组合数相加得到Cnt+nC_{t+n}^n s是n^2级别,可以考虑dp弄出方案数。 考虑从大到小插入,设f[i,j,k]表示已经插入了n~i,目前s为j,有k段。 现在有k段,我们可以把两段用i合并成一段,段数-1,对j的贡献原创 2017-06-01 16:51:35 · 667 阅读 · 0 评论 -
容器
题目描述DP用括号表示一段区间。 设f[i,j,k]表示做到第i个位置,目前未被匹配的左括号有j个,还有k只跳蚤没有左括号。 转移可以直接枚举这个位置放多少右括号以及下一个位置放多少左括号,乘上对应组合数。#include<cstdio>#include<algorithm>#define fo(i,a,b) for(i=a;i<=b;i++)#define fd(i,a,b) for(i原创 2017-07-07 16:49:15 · 392 阅读 · 0 评论 -
[UOJ#214]合唱队形
题目大意有n个人每个人有一个字符集初始为空。 有tot个事件,每个事件形如在第ai个人的字符集里放了bi这个小写字母。 每个时刻等概率发生一个事件。 有一个长度为m的字符串s。某个时刻如果存在编号连续的m个人,按从小到大的顺序发现对于第i个人字符集里都有si,那么则胜利。 问胜利的期望时间,要求判断无解,答案在模意义下进行。容斥设f(i)f(i)表示时刻i还没有胜利的概率。原创 2017-11-24 12:11:59 · 1037 阅读 · 0 评论 -
[CF891E]Lust
题目大意一个序列a,做k次下列操作: 1、随机一个下标x,答案加上Πni=1,i!=xai\Pi_{i=1,i!=x}^na_i 2、将axa_x减一。 求答案的期望。做法设bib_i表示最终aia_i减少了多少次。 答案是Πni=1ai−Πni=1(ai−bi)\Pi_{i=1}^na_i-\Pi_{i=1}^n(a_i-b_i) E(Πni=1ai−Πni=1(ai−bi))=Πni=原创 2017-11-24 16:32:20 · 1239 阅读 · 0 评论 -
[2017集训队作业自选题#115]Replace All
题解推荐wxh 可爱的修修 本题相较于CF794G,n加0了。 我们需要快速计算 ∑ni=1∑nj=12(i,j)\sum_{i=1}^n\sum_{j=1}^n2^{(i,j)} ∑nd=12d∑n/di=1∑n/dj=1[(i,j)=1]\sum_{d=1}^n2^d\sum_{i=1}^{n/d}\sum_{j=1}^{n/d}[(i,j)=1] ∑nd=12d∗(2∗∑n/di=原创 2017-11-17 10:55:59 · 1172 阅读 · 0 评论 -
[arc058d]Iroha and a Grid
题目大意一个矩形,从左上角开始,只能往下或往右走,不经过左下角一个给定大小的矩形,到达右下角的方案数。做法显然可以容斥,统计非法方案,那么枚举左下角矩形最上面一行第一个到达的格子即可。#include<cstdio>#include<algorithm>#define fo(i,a,b) for(i=a;i<=b;i++)#define fd(i,a,b) for(i=a;i>=b;i--)原创 2017-11-03 08:41:28 · 898 阅读 · 0 评论 -
[agc005f]Many Easy Problems
前言居然有FFT题。题目大意给你一棵树,对于每个k求出在树上任选k个点形成虚树大小的和。做法假设这是有根树。 考虑一个点i对于一个k的贡献,考虑容斥。 Ckn−∑j是i儿子Cksize[j]−Ckn−size[i]C_n^k-\sum_{j是i儿子}C_{size[j]}^k-C_{n-size[i]}^k 假设a[i]表示最终答案中CkiC_i^k的系数,对于任何k来说a都是不变的。 然后原创 2017-10-31 10:52:10 · 777 阅读 · 0 评论 -
[agc019f]Yes or No
前言一道数形结合的题目。 发现本质则十分简单(考虑分数相加则麻烦无比)。题意n+m个询问,有n个询问的答案是Yes,其余m个是No。 你依次回答这些询问,每个询问给出Yes或No,给出后告诉你答对了没有。 求最优策略下你期望答对的询问个数。解法不妨令n>=m。 最优策略,选择剩余多的,一样多乱猜一个。 然后画一条y=x的直线。 你假设从一个(i,i)走到(0,0)中途不到对角线。 那么原创 2017-10-12 16:44:05 · 961 阅读 · 0 评论 -
[agc019e]Shuffle and Swap
前言计数水平不行了。 居然不会n^2去dp这个模型。题意太麻烦了看网站。DP假设有x个公用1和y个非公用1。 用图论来理解。 最后一定形成y条链,若干个环。 其中链中的边在序列中要按顺序,环则随意。 环可以先不管。 考虑dp[i,j]表示目前做出来两个i+j的序列,有i个公用1和j个非公用1,区分编号,有顺序,形成j条链的方案数。 有dp[i,j]=dp[i-1,j]*i*j+dp[i原创 2017-10-11 22:38:21 · 679 阅读 · 0 评论 -
[agc001e]BBQ hard
题目大意给你a[]和b[],权值范围在2e3内。 求∑n−1i=1∑nj=i+1Cai+ajai+aj+bi+bj\sum_{i=1}^{n-1}\sum_{j=i+1}^nC_{a_i+a_j+b_i+b_j}^{a_i+a_j}做法你考虑Cba+bC_{a+b}^b的组合意义其实是从(0,0)走到(a,b)每次只能向上和向右有多少走法。 因此这个魔幻的式子其实相当于(0,0)走到两个向量和的原创 2017-09-15 22:12:05 · 693 阅读 · 0 评论 -
[agc013e]Placing Squares
前言这题啃了好久啊。 一开始就知道要解决子问题,但没想到是模型转换,只是对着式子乱搞,推了好久(中途推出了一个隔项斐波那契数列)然而最后证实我式子推错了(菜醒.jpg) 于是膜拜了题解的模型转换。题意给你一个大小为m的集合S,S中不包含n。 现在对于一个正整数序列a1−aka_1-a_k,如果不存在sis_i属于集合S就是合法的,s表示a的前缀和。 这样的序列贡献是Πki=1a2i\Pi_{原创 2017-09-26 17:40:02 · 839 阅读 · 0 评论 -
[codechef]WEASELTX
题目大意有一颗点权树。 每过一天,就会自上而下更新,更新的含义是点权变成子树内点权异或和。 若干个询问询问第d天根节点的点权。分析很显然深度相同的可以缩在一起。 我们设a[i][j]表示第i天深度为j的节点点权是否会给根节点带来影响。 容易发现a[i][j]=XORj−1k=0a[i−1][k]a[i][j]=XOR_{k=0}^{j-1} a[i-1][k] 也就是a[i][j]=a[i原创 2017-09-16 10:28:03 · 630 阅读 · 0 评论 -
[agc012d]Colorful Balls
前言做这题时感觉肯定是有一堆球允许重排的,要求找到每种颜色这些球的个数,其余球大概都是固定的,应该不复杂。 大概思路也确实就是这样。不过需要仔细讨论。 有一个很重要的性质当然是a和b如果都能和c对换,a和b也是可以对换的。题意n个球,每个都有颜色和重量。 对于两个同颜色的球,如果重量和在x以内可以交换位置。 对于两个不同颜色的球,如果重量和在y以内可以交换位置。 问颜色序列的方案数。做法一原创 2017-09-22 22:04:03 · 763 阅读 · 1 评论 -
[bzoj4305]数列的gcd
题目描述给出一个长度为N的数列{a[n]},1<=a[i]<=M(1<=i<=N)。 现在问题是,对于1到M的每个整数d,有多少个不同的数列b[1], b[2], …, b[N],满足: (1)1<=b[i]<=M(1<=i<=N); (2)gcd(b[1], b[2], …, b[N])=d; (3)恰好有K个位置i使得a[i]<>bi 注:gcd(x1,x2,…,xn)为x1原创 2017-02-16 17:27:11 · 807 阅读 · 0 评论 -
[bzoj4710][JSOI2011]分特产
题目描述JYY 带队参加了若干场ACM/ICPC 比赛,带回了许多土特产,要分给实验室的同学们。 JYY 想知道,把这些特产分给N 个同学,一共有多少种不同的分法?当然,JYY 不希望任 何一个同学因为没有拿到特产而感到失落,所以每个同学都必须至少分得一个特产。 例如,JYY 带来了2 袋麻花和1 袋包子,分给A 和B 两位同学,那么共有4 种不同的 分配方法: A:麻花,B:麻花、包子原创 2017-01-16 09:25:21 · 858 阅读 · 0 评论 -
[bzoj2962]序列操作
题目大意你需要兹瓷对序列的三种操作: 1、区间加上一个数。2、区间取相反数。3、区间任意取k个数的积的和(k<=20)线段树我们需要维护两个标记,当线段树要维护多个标记时,如何处理标记之间的影响和如何下传标记成了问题。 这里推荐一下来自Fuxey的处理标记的有效原则 先看另一道题有趣的有趣的家庭菜园 在那道题中,线段树需要同时维护取max和加法标记。我们规定的执行顺序是先做取max再做加法。原创 2016-06-27 11:56:02 · 1605 阅读 · 0 评论 -
[NOI2016模拟5.14]BZOJ
前言加这个前缀也是为了防误会。。题目大意一个n个结点组成的无向完全图,每条边权值在[1,p]且为整数。问有多少种这种图1到n的最短路为m。搜深搜出每种距离标号的点有多少个。 于是就分层了。 然后根据最短路原则,距离标号为i的点一定存在一个距离标号为j的点它们的连边的权值为i-j。 这个不好算,但我们可以算出从所有距离标号小于它的点走过来的距离大于等于j的答案减去大于j就变成了至少1个等于。原创 2016-05-18 18:40:58 · 965 阅读 · 0 评论 -
[bzoj4517][SDOI2016]排列计数
题目大意a是关于n的排列。 问有多少符合条件的排列——恰有m个位置满足a[i]=i错排设dp[i]表示i个元素的错排方案数。 什么意思呢?就是关于i的排列其中不存在任意的a[j]=j。 答案显然就是Cmn∗dp[n−m]C_n^m*dp[n-m] 组合数快速算可以预处理阶乘以及阶乘的逆元。 怎么预处理出dp呢? 我们可以使用容斥原理: 例如dp[n],其实就是要满足n个条件——第i个条原创 2016-04-21 20:45:51 · 1059 阅读 · 0 评论 -
粉刷匠&集体照
题目大意有m个种类的球,第i个种类有r[i]个球,把球排成一行是使得相邻两个球种类不同,问方案数。DP我们可以一个种类一个种类的放球。 两个球中间以及最前最后都有“空”。 定义非法空指该空两端是同色球,合法空反之。 设f[i,j]表示当前做到种类i,有j个合法空。此时有个sum表示空的总数。 我们可以枚举这r[i]个球放去k个合法空中与l个非法空中,那么 f[i,r[i]+j−k−l∗2]原创 2016-05-28 14:43:27 · 657 阅读 · 0 评论 -
J友
题目大意你初始在(0,0)。 每个单位时间可以走向任意一个四连通格子。 问时刻n恰好在(x,y)的方案数。 答案模m。组合数取模显然,我们枚举向上走了多少步,就能计算出应该向左/右/下走多少步。 假设分别为p1,p2,p3,p4,那么相当于一个全排列。 由于对组合数取模比较熟悉,所以把全排列公式变成组合数相乘。 Cp1p1+p2+p3+p4∗Cp2p2+p3+p4∗Cp3p3+p4C_{原创 2016-04-06 21:13:44 · 617 阅读 · 0 评论 -
[bzoj3129][SDOI2013]方程
题目大意现有N个未知数X1..N,已知这N个未知数之和为M。 现有n1个不等式,第i个不等式为Xi<=Fi。 还有n2个不等式,第i个不等式为Xi+n1>=Gi。 求方程的正整数解个数,结果模P。 若P=p1c1∗p2c2∗...∗ptopctopP=p1^{c1}*p2^{c2}*...*ptop^{ctop} 则最大的pici<=105pi^{ci}<=10^5 N,M<=10^9,原创 2015-12-02 20:06:20 · 1520 阅读 · 0 评论 -
[bzoj3456]城市规划
题目大意给你n个点(存在顺序性),初始无边,你可以任意加边。求满足以下条件的连通图数量:无重边无自环。答案模479∗221+1479 * 2 ^{21} + 1DP我们设f[i]表示i个点对应的答案。 正难则反,我们可以用总数量减去不合法数量。 总数量为2C2i2^{C_i^2} 如何不重复不遗漏统计不合法数量? 我们可以枚举i点所在连通块的数量,然后其他乱连, 也就是f[i原创 2015-12-23 20:31:28 · 1534 阅读 · 0 评论 -
wyx
备注这题为啥叫wang yu xuan题目大意h[i]表示i的质因子的最大指数。现有ca组询问,每组给出n与m,ans=∑ni=1∑mj=1h[gcd(i,j)]ans=\sum_{i=1}^n\sum_{j=1}^mh[gcd(i,j)] ca<=10000,n,m<=10000000繁衍我们很容易可以筛出h数组。 我们设f[i]表示有多少对gcd为i,则莫比乌斯反演一下,我们易得 ans=原创 2016-01-08 20:30:28 · 1468 阅读 · 0 评论 -
reward
题目大意球的个数在0..M中,将球分到N个盒子里,每个盒子可以没有,问方案数,答案模P。 N,M,P<=10^9,将P分成互不互质的数的乘积,且这些数均可表示为质数的幂,最大的数<=10^5。隔板问题我们可以看作将M个球放入N+1个盒子里,由于每个盒子可以没有,所以方案数为CNN+MC_{N+M}^N 考虑该如何进行组合数取模呢?中国剩余定理将P分解成互不互质的数的乘积,且这些数均可表示为质数的原创 2015-11-30 20:14:35 · 1448 阅读 · 0 评论 -
[NOIP初赛复习]插空法与插板法解排列组合问题
题目大意现有21本书顺序排成一列,挑选4本书使得任意两本书不相邻,有多少种方法?插板法我们可以插入四块挡板,然后每块挡板左边的书为选定的书。容易得到,四块挡板一共分成五个部分,如果每个部分都有至少2个,便不会有相邻的书。 可是,最前面和最后面会出现bug。 我们可以在最前面增加一个,最后面增加两个。由于每部分都至少要有两个,因此最前面的和最后面两个虚拟球的后面都不会有挡板,就证明了现在的每一种方原创 2015-10-10 21:19:50 · 1987 阅读 · 0 评论 -
登山
题目大意在一个网格图中,不能跨越y=x这条直线,只能向右或向上走,问从(0,0)走到(n,n)不经过m个关键点中任意一个的方案数,答案模10^9+7。任意两点间方案我们先解决从(i,j)走到(k,l)不跨越y=x,方案是多少。 不跨越y=x,就是不经过y=x+1。 我们知道(i,j)到(k,l)的所有方案为Ck−ik−i+l−jC_{k-i+l-j}^{k-i} 意思是一共要走k-i+l-j步原创 2015-10-06 16:12:54 · 648 阅读 · 0 评论 -
[UER #6A]票数统计
题目大意有一个01序列。 有m个约束第i个约束为前xi和为yi与后yi和为xi两个条件至少满足一个。 求有多少种合法序列随便搞搞如果xi和yi不等,那么我们直接能判断出那个条件是必须满足的。 对于xi和yi相等的,找到最大的记为p。 接着我们容斥,左边至少p个连续1+右边至少p个连续1-两边都至少p个连续1。 现在说说已知一堆约束怎么求序列个数。 枚举序列中总共1的个数,然后后缀约束可以原创 2016-07-02 15:01:50 · 564 阅读 · 0 评论 -
搬家
题目描述dp把两扇门之间那条链拉出来。 设f[l,r]表示链上的[l,r]都被攻略了的方案数,经典组合数转移。 要预处理链上每个节点延伸出去的子树方案。#include<cstdio>#include<algorithm>#define fo(i,a,b) for(i=a;i<=b;i++)#define fd(i,a,b) for(i=a;i>=b;i--)using namespac原创 2016-07-15 21:57:28 · 481 阅读 · 0 评论 -
[51nod 1362]搬箱子
题目描述有一个n*m的棋盘,左上角为(0,0),右下角为(n,m).在左上角有一个箱子(箱子是放在交叉点上的)。现在要把箱子搬到最后一排。搬的时候只有向右,向下,或者向右下方走一步。也就是说,假如箱子在(x,y),那么下一步只能把他搬到(x+1,y)或(x,y+1)或(x+1,y+1). 问有多少种的走法可以把箱子从左上角搬到最后一排。由于数目巨大,对X取余输出即可。题目大意考虑走到(n,j)的方原创 2016-12-21 22:43:21 · 949 阅读 · 0 评论 -
[51nod 1309]Value of all Permutations
题目大意长度为N的整数数组A,有Q个查询,每个查询包含一个数M,对A的所有不同排列,执行find函数(需用到查询中的M),你来计算find函数的返回值的和。由于结果很大,输出Mod 1000000007的结果。find(int permutation_A[], int M){ x = Length(permutation_A) sum = 0 for(i = 0; i <原创 2016-12-09 22:44:44 · 479 阅读 · 0 评论 -
[hackerrank]Unique Divide And Conquer
题目大意有多少种不同的n个节点的带编号无根树点分治过程唯一?DP设f[i]表示i个节点时的答案。 g[i]表示i个节点组成的森林,森林中每一个棵树都是点分治过程唯一的,而且是有根树,有多少种。 对于f的计算,首先重心有i种编号,然后思考除去重心后的森林部分,可以用g[i-1]表示除了该层外点分治过程唯一的方案,然后减去非法的情况。 非法情况包括:删去点不是重心,点分治过程不唯一。 两种情况可原创 2016-11-15 16:01:06 · 569 阅读 · 0 评论