P3784 [SDOI2017]遗忘的集合

非常神仙的一道题!

题意:给出某n个数字跑完全背包m容量的dp数组,求满足要求的字典序最小的n个元素,不知道n是多少。

首先考虑付公主的背包这个题。

对dp数组求一个ln,设它为F。

已知 e^(G1+G2+G3)=e^F,其中Gi是第i个物品的生成函数求ln。(重量为i的物品的Gi=∑ 1/i ✖ x^vi)

(上面用到的都是付公主的背包中的一些结论)

设ans[n]表示是否有n这个物品,有的话为1,没有为0。

然后显然就有 F【n】=∑ d|n ans[d] ✖ (1/(n/d)) =∑ d|n ans[d]*d/n

等价于 F[n] ✖ n=∑ d|n and[d] ✖ d

调整一下F数组和ans数组,愉快的mobius反演一下就可以求出ans数组了。

本来是一个非常好的题,但非要强行加一个MTT就太毒瘤了。

转载于:https://www.cnblogs.com/Creed-qwq/p/10646523.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值