首页 > 其他 > 详细

【BZOJ】4559: [JLoi2016]成绩比较 计数DP+排列组合+拉格朗日插值

时间:2018-04-14 13:36:55      阅读:345      评论:0      收藏:0      [点我收藏+]

【题意】n位同学(其中一位是B神),m门必修课,每门必修课的分数是[1,Ui]。B神碾压了k位同学(所有课分数<=B神),且第x门课有rx-1位同学的分数高于B神,求满足条件的分数情况数。当有一位同学的一门必修课分数不同时视为两种情况不同。n,m<=100,Ui<=10^9。

【算法】计数DP+排列组合+拉格朗日插值

【题解】把分数作为状态不现实,只能逐门课考虑。

设$f[i][j]$表示前i门课,有j个同学被碾压的情况数,则有:

$$f[i][j]=g(i)\cdot\sum_{k=j}^{n}f[i-1][k]\cdot\binom{k}{k-j}\cdot\binom{n-k-1}{r_i-k+j}$$

其中,$g(i)$表示第i门课的合法分数情况数,因为容易发现当天分数合法情况数与多少人被碾压等信息无关,所以可以独立出来。

枚举前i-1门课被碾压的人数k,那么有

【BZOJ】4559: [JLoi2016]成绩比较 计数DP+排列组合+拉格朗日插值

原文:https://www.cnblogs.com/onioncyc/p/8831107.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!