YbtOJ#20067-[NOIP2020模拟赛B组Day5]糖果分配【dp】
正题
题目链接:http://noip.ybtoj.com.cn/contest/102/problem/1
题目大意
nnn个xix_ixi在[li,ri][l_i,r_i][li,ri]中随机选择,给出一个ccc,一个序列∑ki=c\sum k_i=c∑ki=c
每种方案贡献为∏i=1nxiki\prod_{i=1}^nx_i^{k_i}i=1∏nxiki
解题思路
设fi,jf_{i,j}fi,j表示到第iii个小朋友,ccc已经分配了jjj出去时的贡献和
fi,j=∑k=0j(fi,k+∑z=lirizj−k)f_{i,j}=\sum_{k=0}^j(f_{i,k}+\sum_{z=l_i}^{r_i}z^{j-k})fi,j=k=0∑j(fi,k+z=li∑rizj−k)
然后预处理后面那个东西的前缀和即可,时间复杂度O(nc2)O(nc^2)O(nc2)
解题思路
#include<cstdio>
#include<cstring>
#include<algorithm>
#define ll long long
using namespace std;
const ll N=410,XJQ=1e9+7;
ll n,c,l[N],r[N],f[N][N],z[N][N],ans;
signed main()
{freopen("candy.in","r",stdin);freopen("candy.out","w",stdout);scanf("%lld%lld",&n,&c);for(ll i=1;i<=n;i++)scanf("%lld",&l[i]);for(ll i=1;i<=n;i++)scanf("%lld",&r[i]);for(ll i=1;i<=400;i++){z[i][0]=1;for(ll j=1;j<=400;j++)z[i][j]=z[i][j-1]*i%XJQ;}for(ll i=0;i<=400;i++)for(ll j=1;j<=400;j++)(z[j][i]+=z[j-1][i])%=XJQ;f[0][0]=1;for(ll i=1;i<=n;i++)for(ll j=0;j<=c;j++)for(ll k=j;k<=c;k++)(f[i][k]+=f[i-1][j]*(z[r[i]][k-j]-z[l[i]-1][k-j])%XJQ)%=XJQ;printf("%lld",(f[n][c]+XJQ)%XJQ);
}
YbtOJ#20067-[NOIP2020模拟赛B组Day5]糖果分配【dp】相关推荐
- YbtOj#20073. 「NOIP2020 模拟赛 B 组 Day6」钻石守卫
文章目录 ResultResultResult HyperlinkHyperlinkHyperlink DescriptionDescriptionDescription SolutionSoluti ...
- YbtOJ#20068-[NOIP2020模拟赛B组Day5]连通子图【构造】
正题 题目链接:http://noip.ybtoj.com.cn/contest/102/problem/2 题目大意 求构造一个包含根节点的联通子图kkk个的树. 解题思路 现在考虑一棵树,如果我们 ...
- YbtOJ#20070-[NOIP2020模拟赛B组Day5]诗人小K【状压dp】
正题 题目链接:http://noip.ybtoj.com.cn/contest/102/problem/4 题目大意 求有多少个长度为nnn的序列aaa满足1≤ai≤101\leq a_i\leq ...
- YbtOJ#20237-[冲刺NOIP2020模拟赛Day10]区间均值【树状数组】
正题 题目链接:https://www.ybtoj.com.cn/contest/68/problem/1 题目大意 nnn个数字的序列,求有多少个区间[l,r][l,r][l,r]的平均值在[L,R ...
- YbtOJ#20240-[冲刺NOIP2020模拟赛Day10]弱者对决【笛卡尔树,区间dp】
正题 题目链接:https://www.ybtoj.com.cn/contest/68/problem/4 题目大意 mmm个三元组(ai,bi,ci)(a_i,b_i,c_i)(ai,bi,ci ...
- YbtOJ#20239-[冲刺NOIP2020模拟赛Day10]连边方案【状压dp】
正题 题目链接:https://www.ybtoj.com.cn/contest/68/problem/3 题目大意 求有多少个nnn个点mmm条边的无向图满足 有连边的点之间编号差不超过kkk 所有 ...
- YbtOJ#20236-[冲刺NOIP2020模拟赛Day9]红点蓝点【线段树,堆】
正题 题目链接:https://www.ybtoj.com.cn/contest/66/problem/4 题目大意 平面上nnn个红点,nnn个蓝点,对于没一个红点求一个与它纵坐标距离不超过ddd的 ...
- YbtOJ#20235-[冲刺NOIP2020模拟赛Day9]公共序列【dp】
正题 题目链接:https://www.ybtoj.com.cn/contest/66/problem/3 题目大意 给出两个字符串A,BA,BA,B,求它们的最长公共子序列. 解题思路 先考虑朴素的 ...
- YbtOJ#20082-[NOIP2020模拟赛B组Day8]导出子图【dp】
正题 题面链接:https://www.ybtoj.com.cn/contest/62/problem/4 题目大意 nnn个区间,如果第xxx个区间和第yyy个区间有交集那么xxx到yyy直接就有一 ...
最新文章
- html转为pdf工具,wkhtmltopdf html转pdf工具的使用
- 4G EPS 中的消息类型
- 根据对方提供的URL获取返回的数据流并保存为XML
- java中删除node节点_[Java]LeetCode237. 删除链表中的节点 | Delete Node in a Linked List
- linux系统下tar/gz/7z/xz/bz2/zip等各种格式的打包压缩解压
- 依据imu姿态角计算z轴倾角_1. 姿态的表示方法
- java start打开cmd窗口并停住_浅析Java命令执行
- python判断列表为空的三种方法
- BZOJ 1085: [SCOI2005]骑士精神( IDDFS + A* )
- android地球经纬度平面图,地球经纬度划分图高清 怎么划分经纬度
- centos老是自动更换ip地址解决方案
- reg型变量怎么赋值_FPGA的wire和reg类型变量
- Blender插件BoxCutter 7.1.7v15 硬表面建模2.91+教程Box Cutter
- Webservice CXF 调用报错 Could not find conduit initiator for address:
- SWAN之ikev2协议crl-revoked配置测试
- VScode 直接运行ts文件
- c语言sizeof啥作用,C语言中sizeof什么意思
- 【虎书】Fundamentals of Computer Graphics(Fourth Edition)第二章习题解答
- UVA 11021 繁衍麻球
- VSCode+Marp:用Markdown做幻灯片(进阶篇)-宋森安
热门文章
- 在鹅厂,我作为一个Java 程序员每天都在摸鱼!!!
- 索尼服务器维护时间,索尼云服务器
- oracle经常开关好吗,频繁开关机对电脑有什么影响吗?
- linux终端背景透明度设置,Ubuntu Terminal标签背景颜色设置
- php 命名空间(,PHP命名空间(Namespace)简明教程
- php框架快速入门,php-laravel4.0框架 简单快速入门
- java 根据客户端重定向_JavaWeb【1.4HttpServletResponse类、重定向】
- python使用opencv查找轮廓_Python+opencv学习记录20:轮廓发现,Pythonopencv
- mockito mock void方法_使用 Junit + Mockito 实践单元测试!
- jbl css-h15,JBL CSS8006BM 天花音箱