描述

这里是欢乐的进香河,这里是欢乐的幼儿园。

今天是2月14日,星期二。在这个特殊的日子里,老师带着同学们欢乐地跳着,笑着。校长从幼儿园旁边的小吃店买了大量的零食决定分给同学们。听到这个消息,所有同学都安安静静地排好了队,大家都知道,校长不喜欢调皮的孩子。

同学们依次排成了一列,其中有A位小朋友,有三个共同的欢乐系数O,S和U。如果有一位小朋友得到了x个糖果,那么她的欢乐程度就是f(x)=Ox^2+Sx+U。

现在校长开始分糖果了,一共有M个糖果。有些小朋友可能得不到糖果,对于那些得不到糖果的小朋友来说,欢乐程度就是1。如果一位小朋友得不到糖果,那么在她身后的小朋友们也都得不到糖果。(即这一列得不到糖果的小朋友一定是最后的连续若干位)

所有分糖果的方案都是等概率的。现在问题是:期望情况下,所有小朋友的欢乐程度的乘积是多少?呆呆同学很快就有了一个思路,只要知道总的方案个数T和所有方案下欢乐程度乘积的总和S,就可以得到答案Ans=S/T。现在他已经求出来了T的答案,但是S怎么求呢?他就不知道了。你能告诉他么?

因为答案很大,你只需要告诉他S对P取模后的结果。

后记:

虽然大家都知道,即便知道了T,知道了S对P取模后的结果,也没有办法知道期望情况下,所有小朋友欢乐程度的乘积。但是,当呆呆想到这一点的时候,已经彻底绝望了。

格式

输入格式

第一行有2个整数,分别是M和P。

第二行有一个整数A,第三行有一个整数O。

第四行有一个整数S,第五行有一个整数U。

输出格式

一个整数S,因为答案可能很大,你只需要输出S 对P取模后的结果。

样例1

样例输入1

4 100
4
1
0
0

样例输出1

63

限制

对于40%的数据,M<=150。

对于60%的数据,M<=2000。

对于80%的数据,M<=6000。

对于100%的数据,M<=10000,P<=255,A<=10^8,O<=4,S<=300,U<=100。

恶心之极的题目……只能手推一个非常可怕的dp转移方程……详细内容看代码吧

#include<cstdio>
#define rec(x,y) rec[aa[y]+x]
using namespace std;int n,m,a,b,c,p,l1,l2,l3,l0;
int rec[50000001],ans=0,aa[10001],f[255];
int main(){scanf("%d%d%d%d%d%d",&m,&p,&n,&a,&b,&c);register int i,j;if (n>m) n=m;aa[1]=0;a%=p;b%=p;c%=p;f[0]=c;for (i=1;i<p;i++){f[i]=f[i-1]+a*(2*i-1)+b;while (f[i]>=p) f[i]-=p;}for (i=2;i<=m;i++) aa[i]=aa[i-1]+i-1;for (i=1,j=1;i<=m;i++,j++,j-=j>=p?p:0)if (i>p) rec(1,i)=rec(1,(j==0?p-1:j-1)+1);else rec(1,i)=f[j];int k=((rec(1,2)-3*rec(1,1))+3*p)%p,y=(2*a-rec(1,2)+2*rec(1,1)+100*p)%p;ans=rec(1,m);for (i=2;i<=n;i++){rec(i,i)=(rec(i-1,i-1)*f[1])%p;int d=rec(i,i);j=i+1;d+=((k*rec(i-1,j-2))+(f[1]*rec(i-1,j-1)));rec(i,j)=(2*rec(i,j-1)+d+p)%p;j++;l0=aa[j]+i;l1=aa[j-1]+i-1;l2=aa[j-2]+i-1;l3=aa[j-3]+i-1;for (;j<=m;j++){d+=((y*rec[l3])+(k*rec[l2])+(f[1]*rec[l1]));rec[l0]=(2*rec[l1+1]-rec[l2+1]+d+p)%p;l0+=j;l1+=j-1;l2+=j-2;l3+=j-3;}ans+=rec(i,m);}printf("%d\n",ans%p);
}

UPD at 2017.4.8

原来我这样是暴力水过,有空再写写正解

转载于:https://www.cnblogs.com/Enceladus/p/5068188.html

bzoj4332;vijos1955:JSOI2012 分零食相关推荐

  1. bzoj 4332:JSOI2012 分零食

    描述 这里是欢乐的进香河,这里是欢乐的幼儿园. 今天是2月14日,星期二.在这个特殊的日子里,老师带着同学们欢乐地跳着,笑着.校长从幼儿园旁边的小吃店买了大量的零食决定分给同学们.听到这个消息,所有同 ...

  2. Fast Fourier Transform

    写在前面的.. 感觉自己是应该学点新东西了.. 所以就挖个大坑,去学FFT了.. FFT是个啥? 坑已补上.. 推荐去看黑书<算法导论>,讲的很详细 例题选讲 1.UOJ #34. 多项式 ...

  3. 【2017 4 12 总结】

    今天做JSOI2012的题. 才120,其实是可以拿很多部分分什么的,但是都打错... (代码实现能力太差了. 1. 4330: JSOI2012 爱之项链 Time Limit: 10 Sec  M ...

  4. 那些年,和女孩们同居的日子

    合租 女孩 原创文章 2013年,我放弃了考研,投入求职大军.我想找一份软件运维工作.但海投了近百份简历后,没有一家公司肯瞧得上我.阴差阳错间,我收到了青岛一家信息公司的面试邀请,最后顺利的拿到了of ...

  5. 2021年瑶海区信息学竞赛试卷(小学组)

    2021年瑶海区信息学竞赛试卷(小学组) 1.分零食(food) 题目描述 国庆放假,有n位小朋友们一起去游乐园玩耍,小朋友们都带了一些好吃的零食,为了增进友谊,于是大家把零食都放在一起,共有m份零食 ...

  6. 部分地区信息学中小学组试卷目录

    部分地区信息学中小学组试卷目录 2023年 合肥市庐阳区信息学竞赛区赛 小学组 T1.快递盒(box)               数学问题 T2.新能源车(green)        字符串问题 T ...

  7. 五金手册在线查询_带剔除在线分选秤 零食袋装称重剔除秤-技术文章

    带剔除在线分选秤 零食袋装称重剔除秤 上海恒刚厂家是专业生产在线分选秤.此款在线分选秤是一种高速度.高精度的在线分选设备,采用连续动态自动称重方式检测物品重量,配以自动剔除机构,从而实现在流水线上的高 ...

  8. 零食嘴----美食领域的美丽说

    零食嘴美食分享社区首页 阿里巴巴参谋长曾鸣曾说过:"淘宝等美丽说模式整整等了两年.不仅在女性领域,阿里希望在各个维度都出现'美丽说'." 零食嘴就是美食领域美丽说. 所谓的美丽说模 ...

  9. 1个显示器分割2画面_1把花生2个鸡蛋,做个小零食,1口1个特别香,做法还简单!...

    大家好,我是张小妹美食,关注小妹,有更多的家常菜供大家参考. 小妹今天给大家分享一种花生的好吃做法,做法很简单,味道特别好. 记得关注+评论+转发收藏!谢谢大家! 步骤如下: 1.盆中放入一把花生米, ...

  10. 消费升级背景下零食行业发展报告_趋势 | 保健食品 “零食化”升级

    虽然同属于食品,但保健食品和零食在概念上有着较大的区别.保健食品是指声称具有保健功能或者以补充维生素.矿物质等营养物质为目的的食品.零食通常是指一日三餐之外的时间里所食用的食品,包括休闲食品.饮品等. ...

最新文章

  1. 深度学习三巨头也成了大眼萌,这个一键转换动画电影形象的网站竟因「太火」而下线...
  2. 基于.NetCore3.1搭建项目系列 —— 使用Swagger导出文档 (番外篇)
  3. ext get id js_【翻译】Ext JS最新技巧——2015-8-11
  4. 擦窗机器人测试标准_擦窗机器人,我选择玻妞的三个理由!
  5. 深度解读MRS IoTDB时序数据库的整体架构设计与实现
  6. 我们应选择怎样的IT公司
  7. 03day输入及转义符的使用
  8. 【牛客网SQL篇】SQL必知必会
  9. 什么是NVMe驱动器,您应该购买一个吗?
  10. 浅谈Java代码安全(一)
  11. 什么叫误差的反向传播,反向传播误差怎么算的
  12. PDF文件如何转成Word?这样操作就能转换
  13. 苹果公司的电脑产品及其历史
  14. 区块链是什么通俗解释_区块链技术是什么?区块链的通俗解释原来是这样!
  15. 防止恶意刷新页面的Java实现
  16. pandas实例——电影数据分析
  17. 路由器网口1一直闪烁正常吗_网口1一直闪烁上不了网
  18. MySQL 创建数据库 创建表
  19. BS项目——架构能力
  20. IntelliJ IDEA 2019.1.3 x64 简约基本配置

热门文章

  1. linux cpu 个数、核心数、线程数
  2. 业务逻辑需要放在service层_CTO问:Service层真的需要接口吗?
  3. Android LitePal
  4. Error creating document instance. Cause: org.xml.sax.SAXParseException; lineNumber: 54; columnNumbe
  5. java常用api-字符串
  6. 十七、String类型常用方法(二)
  7. Hadoop之crontab与ntpd
  8. Linux 命令之 scp 文件传输
  9. 阶段3 2.Spring_03.Spring的 IOC 和 DI_6 spring中bean的细节之三种创建Bean对象的方式
  10. 阶段2 JavaWeb+黑马旅游网_15-Maven基础_第4节 maven生命周期和概念模型图_08maven生命周期...