排列计数
&*^*&
这个作者很懒,什么都没留下…
展开
-
acm-(组合数、方案统计)Sichuan State Programming Contest 2011 H.Rebuild the Sequence
传送门首先对于第一问,其实等价于对kkk个物品各自分配一个数字:c1,c2,c3,...,ckc_1,c_2,c_3,...,c_kc1,c2,c3,...,ck,满足A≤c1≤c2≤c3≤...≤BA\le c_1\le c_2\le c_3\le...\le BA≤c1≤c2≤c3≤...≤B,然后问方案数。不妨设c0=A,ck+1=Bc_0=A,c_{k+1}=Bc0=A,ck+1=B,那么可以求出关于ccc的差分数组为di=ci−ci−1d_i=c_i-c_{i-1}di..原创 2020-12-14 17:50:13 · 119 阅读 · 0 评论 -
acm-(康托展开)Codeforces Round #681 (Div. 2) E. Long Permutation
传送门本题需要注意到xxx很小,就算是最大的情况下,我们将所有的xxx累和起来也只有2e102e102e10,相当于最多也只会改变151515个数的排列,注意到15!>2e1015!>2e1015!>2e10,因此虽然nnn很大,但我们只需要维护整个排列末尾的151515个数的排列方式即可,让后利用逆康拓展开可以直接求出这151515个数在名次为kkk的情况下的排列情况。关于逆康拓展开详见acm-排列组合学习笔记第四部分ll fac[16],a[16],sum[maxn],b[16].原创 2020-11-16 10:59:00 · 162 阅读 · 0 评论 -
acm-(dp计数)Educational Codeforces Round 97 (Rated for Div. 2) F. Emotional Fishermen
传送门本题是让计算方案数,考虑如何设计dp的状态,注意到我们需要计数的排列的性质与前若干个元素的最大值有关。不妨先将aaa数组从小到大排个序,然后用dp[i][j]dp[i][j]dp[i][j]表示长度为iii的排列满足最大元素为aja_jaj且符合题目所述性质的方案数。这里分两种情况来计算方案数:首先我们考虑这个排列末尾的元素是多少,如果是aja_jaj,那么意味着前i−1i-1i−1个元素的最大值的两倍不能超过aja_jaj,不妨枚举这个最大值,假设hjh_jhj表示值的两倍不超过aja.原创 2020-11-07 11:33:38 · 255 阅读 · 0 评论 -
acm-(推式子、好题、数学、排列计数)2020ICPC·小米 网络选拔赛第一场 H.Grouping
传送门先将aia_iai从小到大排序。然后这里有一些符号约定:ggg表示一个分组,wg=∣ai−aj∣w_g=|a_i-a_j|wg=∣ai−aj∣表示某个组ggg的权值,GGG表示所有分组构成的一个不重集,mmm表示一种对序列的分组方案,wm‾=1n∑g∈mwg\overline{w_m}=\frac 1n\sum_{g\in m}w_gwm=n1∑g∈mwg表示分组方案mmm中各个组权值的平均数,Wm=1n∑g∈m(wg−wm‾)2W_m=\frac 1n\sum_{.原创 2020-10-29 17:28:39 · 329 阅读 · 0 评论