题意:
给定 n,m,s,t 求出满足:
∑i=1mxi≤s
∀i≤m,xi>0
∀i≤n,xi≤t
的解的个数。
(m−n≤1000,m≤1e9,t≤1e5,nt≤s≤1e18)
题解:
这好像是国家集训队的作业,反正我不会做。。。
有几个知识点怕忘记写一篇博客来记一下。
首先比较显然的是可以枚举前 n 个中的非法个数然后容斥,得到:
设 fi=(s−tim) ,则
ans=∑i=0n(−1)i(ni)fi
这个式子其实是 n 阶前项差分公式稍微变一下形,那么考虑前向差分这个
利用 n 阶差分公式:
这个式子可以通过归纳法证明,这里略过。
得到:
(−1)nans=∑i=0n(−1)n−i