【BZOJ4710】分特产(容斥原理,组合计数)
题意:有m种特产,第i种有a[i]个
有n个同学分特产,要求:
1.恰好分完
2.每个人至少要分到一个
求方案数模10^9+7
n,m,a[i]<=1000
思路:WYZ作业
首先考虑对于每一种特产,a[i]个特产分给n个人而且每人都分到的方案数是C(n+a[i]-1,n-1)*c(n,n)
对于m种特产,所有人分的方案数就是它们的乘积
考虑有些人没分到,设现在只有n-i个人可能分到,另外i人什么都没有
方案数是c(n-i+a[i]-1,n-i-1)*c(n,n-i)
显然容斥,枚举有几人取到,对于每一种方案数相乘再加(减)即可
const mo=;
var c:array[..,..]of longint;
a:array[..]of longint;
n,m,i,j,v:longint;
sun,ans:int64; begin readln(n,m);
for i:= to m do read(a[i]);
c[,]:=; c[,]:=;
for i:= to do
begin
c[i,]:=;
for j:= to do c[i,j]:=(c[i-,j-]+c[i-,j]) mod mo;
end;
v:=-; sun:=;
for i:=n downto do
begin
v:=-v; ans:=c[n,i];
for j:= to m do
begin
ans:=ans*c[i+a[j]-,i-];
if ans>=mo then ans:=ans mod mo;
end;
sun:=(sun+ans*v) mod mo;
sun:=(sun+mo) mod mo;
end;
writeln(sun); end.
【BZOJ4710】分特产(容斥原理,组合计数)的更多相关文章
- BZOJ 4710: [Jsoi2011]分特产 [容斥原理]
4710: [Jsoi2011]分特产 题意:m种物品分给n个同学,每个同学至少有一个物品,求方案数 对于每种物品是独立的,就是分成n组可以为空,然后可以用乘法原理合起来 容斥容斥 \[ 每个同学至少 ...
- 【bzoj4710】[Jsoi2011]分特产 容斥原理+组合数学
题目描述 JYY 带队参加了若干场ACM/ICPC 比赛,带回了许多土特产,要分给实验室的同学们. JYY 想知道,把这些特产分给N 个同学,一共有多少种不同的分法?当然,JYY 不希望任何一个同学因 ...
- Bzoj4710 分特产(容斥原理+组合数)
题面 Bzoj 题解 考虑容斥原理,所有人都有特产的方案数等于: 至少零个人没有特产\(-\)至少一个人没有特产\(+\)至少两个人有特产\(-...\) 接着考虑其中一种情况怎么求(假设现在至少有\ ...
- BZOJ4710 分特产
题目链接:戳我 容斥题. 设\(f[i]\)表示至多有i个人能够分到(也就是至少n-i个人分不到)的方案数 \(f[i]=\prod_{j=1}^mC_{a[j]+i-1}^i-1\) a[j]表示的 ...
- 题解 [BZOJ4710] 分特产
题面 解析 step 1 我们先考虑下有人没有的情况吧, 那对于每个特产就是放隔板的情况了, 设\(a[i]\)为第\(i\)个特产的个数, 那么第\(i\)个特产的方案数就是\(C_{a[i]+n- ...
- HDU 4390 Number Sequence (容斥原理+组合计数)
HDU 4390 题意: 大概就是这样.不翻译了: Given a number sequence b1,b2-bn. Please count how many number sequences a ...
- 【BZOJ 3027】 3027: [Ceoi2004]Sweet (容斥原理+组合计数)
3027: [Ceoi2004]Sweet Time Limit: 1 Sec Memory Limit: 128 MBSubmit: 71 Solved: 34 Description John ...
- bzoj4710: [Jsoi2011]分特产 组合+容斥
4710: [Jsoi2011]分特产 Time Limit: 10 Sec Memory Limit: 128 MBSubmit: 289 Solved: 198[Submit][Status] ...
- [BZOJ4710][JSOI2011]分特产(组合数+容斥原理)
4710: [Jsoi2011]分特产 Time Limit: 10 Sec Memory Limit: 128 MBSubmit: 395 Solved: 262[Submit][Status] ...
- BZOJ 4555: [Tjoi2016&Heoi2016]求和 [FFT 组合计数 容斥原理]
4555: [Tjoi2016&Heoi2016]求和 题意:求\[ \sum_{i=0}^n \sum_{j=0}^i S(i,j)\cdot 2^j\cdot j! \\ S是第二类斯特林 ...
随机推荐
- 443 String Compression 压缩字符串
给定一组字符,使用原地算法将其压缩.压缩后的长度必须始终小于或等于原数组长度.数组的每个元素应该是长度为1 的字符(不是 int 整数类型).在完成原地修改输入数组后,返回数组的新长度.进阶:你能否仅 ...
- google breakpad 使用初步总结
项目地址:https://code.google.com/p/google-breakpad/ 访问不了请挂VPN 这是一个由google主导的开源项目,官方介绍为:An open-source ...
- [转]在ASP.NET MVC3中使用EFCodeFirst 1.0
本文转自:http://kb.cnblogs.com/page/97003/ 作者: NinoFocus 来源: 博客园 发布时间: 2011-04-12 10:41 阅读: 11971 次 ...
- Spring注解驱动开发之扩展原理
前言:现今SpringBoot.SpringCloud技术非常火热,作为Spring之上的框架,他们大量使用到了Spring的一些底层注解.原理,比如@Conditional.@Import.@Ena ...
- 【Hibernate】多对多关系的表达
User.hbm.xml <?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE hibernate ...
- 鸢尾花数据集-iris.data
iris.data 5.1,3.5,1.4,0.2,Iris-setosa 4.9,3.0,1.4,0.2,Iris-setosa 4.7,3.2,1.3,0.2,Iris-setosa 4.6,3. ...
- iOS programming UITableView and UITableViewController
iOS programming UITableView and UITableViewController A UITableView displays a single column of dat ...
- 阿里云设置指定ip访问实例
添加安全组规则 添加允许访问的外网IP,优先级设置为1,并将所有ip设置为拒绝访问,优先级设置为2. 参考地址: https://help.aliyun.com/document_detail/254 ...
- js面向对象之构造函数
最简单的面向对象程序<script type="text/javascript"> var obj = new Object(); obj.qq = '10791611 ...
- 5-Java-C(小题答案)
1. a[i][j]=a[i-1][j-1]+a[i-1][j] 2.1835421 3.93 4.1572836