首页 > TAG信息列表 > P4389
[洛谷P4389] 付公主的背包
前言 经典题。 题目 洛谷 讲解 首先对 \(998244353\) 条件反射,然后发现答案是 \(\prod \frac{1}{1-x^{v_{i}}}\)。 但是直接做是 \(O(nm\log_2m)\) 的,甚至跑不过背包,接下来就是NB优化。 我们暂且先不考虑倒数,令 \(F(x)=1-x^{V}\),幂次的累乘可以自然想到取对数后转为累加。 令 \(\lP4389 付公主的背包
P4389 付公主的背包F公主的背包 如果有标号这题会非常Simple,答案是 \(\sum A^{k}(x)=\dfrac{1}{1-A(x)}\) ,求逆即可。 可惜无标号。。。 所以只能对每种物品分开考虑。 对于一个体积为 \(v\) 的物品,生成函数 \(F(x)=\sum x^{iv}=\dfrac{1}{1-x^v}\) 。 \(G(x)=\prod F(x)\) 即为答洛谷P4389 付公主的背包
题目描述 题解 烧菜的弱化版 把第 $i$ 个物品的生成函数写出, $F_i(x)=\sum_{j=0}^{\infty} x^{a_i \times j}=\frac{1}{1-x^{a_i}}$ 则最后的答案的生成函数 $G(x)=\prod_{i=1}^nF_i(x)$ 两边取对数,即 $\ln G(x)=\ln (\prod_{i=1}^nF_i(x))=\sum_{i=1}^n \ln F_i(x)=-\sum_{i=1}^n[洛谷P4389]付公主的背包
传送门 题目大意 有\(n\)类物品,每种物品体积为\(V_i\),且都有无数多件。 问你塞满容量为\(s\)的背包方案数,对于每个\(s\in [1,m]\),\(m\)给定且\(\leq 10^5\),都求出方案数。答案对\(998244353\)取模。 \(30\%\)的数据,\(n,m\leq 3000\); \(60\%\)的数据,纯随机生成