组合数学经典方程的对偶方程一个不等式问题(例题:acwing1312 序列统计)

Posted hans774882968

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了组合数学经典方程的对偶方程一个不等式问题(例题:acwing1312 序列统计)相关的知识,希望对你有一定的参考价值。

经典方程的对偶方程

方程,指经典方程sum(x[j]) = n, 1 <= j <= m, x[j] >= 0。它的解的个数很容易求,设有n个球和m-1个隔板,则隔板间的空隙有m个且允许为空,故解数C(n+m-1,n)

它的对偶问题是什么呢?设以上经典方程为(m,n),并设对偶问题为(p,q),则:

p+q-1 = n+m-1

q = m-1(注意,不可能是q = n

于是解得(n+1,m-1)。这意味着sum(x[j]) = m-1, 1 <= j <= n+1, x[j] >= 0的解数和原方程的解数相同。我们代入即可验证,对偶方程的对偶方程就是原方程。

一个不等式问题

不等式,指sum(x[j]) <= n, 1 <= j <= m, x[j] >= 0。我们构造一个新变量x[0] >= 0,则得到一个方程(m+1,n)(沿用上面约定的记号)。只需要证明解相互包含即可证明它们解数相同。

一个原不等式的解,总对应着新方程的x[0] = n-sum(x[j])的解,所以原不等式的解数 <= 新方程。一个新方程的解,总对应着一个原不等式的解,因为它们都满足原不等式的要求,所以新方程的解数 <= 原不等式。证毕。

acwing1312 序列统计

传送门

(我交不了555)

题意:给定三个正整数N,L,R,统计长度在1N之间,元素大小都在LR之间的单调不降序列的数量。

N,L,R都是1e9,模1e6+3,多组样例。

首先元素大小改成都在0 ~ R-L+1之间。固定数组长度为k,即求0 <= a[1] <= ... <= a[k] <= R-L的方案数。再考虑设变量x[i] = a[i] - a[i-1], x[1] = a[1],于是求sum(x[i]) <= R-L, x[i] >= 0的解数即可(注意这里有k个不等式要满足,但最后一个不等式满足即可满足前面的,所以只指出这一个)。

根据《一个不等式问题》,我们得到它等价于方程(k+1,R-L),解数C((k+1)+(R-L)-1,(k+1)-1) = C(k+(R-L),k)

接下来我们需要求ans = sum(C(k+R-L,k)),k >= 1,即ans = sum(C(k+R-L,k)) - 1,k >= 0。不妨把k换成R-L,即C(R-L+k,R-L)。这个求和式是变量个数在变,总和为定值,不好处理,不妨用《经典方程的对偶方程》的结论来转化。(k+1,R-L) <=> (R-L+1,k),再根据《一个不等式问题》,求和式对应的方程是(R-L+2,n),所以ans = C(R-L+1+n,n) - 1

总结:反复使用上面介绍的两个结论即可解决。

再解决一个经典问题

sum(C(n+i,i)),0 <= i <= m

C(n+i,i)表示的方程是(x,y),则

x+y-1 = n+i

y = iy = n不太方便,因为这样导致变量个数在变)

x = n+1, y = i。根据《一个不等式问题》,原问题就是方程(n+2,m),所以ans = C(n+m+1,m)

同理,可证
C n + 1 k + 1 = ∑ i = 0 n C i k C_n+1^k+1=\\sum_i=0^n C_i^k Cn+1k+1=i=0nCik
证明:C(i,k)对应方程(k+1,i-k)的解数,推出ans对应方程(k+2,n-k)的解数。

以上是关于组合数学经典方程的对偶方程一个不等式问题(例题:acwing1312 序列统计)的主要内容,如果未能解决你的问题,请参考以下文章

区间DP

svm的为啥要 转化为对偶问题求解

线性代数,求解矩阵方程

一文理解拉格朗日对偶和KKT条件

跪求方程组的解法,在线等

2017年猿辅导初中数学竞赛(基础)暑期系统班作业题解答