UESTC cdoj 619 吴神,人类的希望 (组合数学)
枚举盒子的个数,先把总数n减去掉box*k保证每个盒子至少有k个小球,剩下的小球放入盒子中可以为空,
加入box个小球保证每个盒子至少有一个小球,问题转化成不可区分小球放入不可区分盒子非空的方案数。
C[i][j]表示i个小球放入j个盒子非空的方案数,那么C[i][j] = C[i-1][j-1]+C[i-j][j],
分类:1.第j个盒子是空的,第i个小球必须放到第j个盒子中。
2.第j个盒子非空,第i个小球选一个盒子放,为了排除重复,我们注意到之前的盒子只有1层(最后一个盒子只放了一个小球),
那么先放一层减去j个小球,剩下i-j个往j个盒子里放,然后每个盒子都加一个小球,如果合法,那么至少会有2层。
对于可空的盒子,只要 把C[i-1][j-1]改成C[i][j-1]
#include<bits/stdc++.h>
using namespace std;
const int mod = 1e9+;
const int maxn = ;
int C[maxn][maxn]; void GetC()
{
for(int i = ; i < maxn; i++){
C[i][] = C[i][i] = ;
for(int j = ; j < i; j++){
C[i][j] = (C[i-][j-]+C[i-j][j])%mod;
}
}
} int main()
{
GetC();
int T; scanf("%d",&T);
while(T--){
int n,k; scanf("%d%d",&n,&k);
int ans = ;
for(int box = ,M = n/k; box <= M; box++){
ans = (ans + C[n-box*k+box][box])%mod;
}
printf("%d\n",ans);
}
return ;
}
UESTC cdoj 619 吴神,人类的希望 (组合数学)的更多相关文章
- uestc 1721 吴神,人类的希望
// 将n个相同的球放进m个盒子 盒子不为空的方法总数// dp[i][j] 表示i个盒子 j个球的方法总数// 递推关系 dp[i][j]=dp[i-1][j-1]+d[i][j-i]// a. i ...
- uestc 1722 吴神的表白
// 这题做的我好难过 不是因为没有思路 而是因为超数据类型范围的事// ax+by=c a,b,c>0// 那么该直线经过 1 2 4三个象限// 2 4 象限的第一整数解肯定是该象限最优解/ ...
- uestc 1725 吴神数
// 筛选法// 先求出 sqrt(1<<31)内的素数// 然后筛选出符合要求的数// 详情见代码注释// #pragma comment(linker, "/STACK:10 ...
- cdoj 1131 男神的礼物 区间dp
男神的礼物 Time Limit: 20 Sec Memory Limit: 256 MB 题目连接 http://acm.uestc.edu.cn/#/problem/show/1131 Descr ...
- cdoj 1141 酱神寻宝 状压dp
酱神寻宝 Time Limit: 20 Sec Memory Limit: 256 MB 题目连接 http://acm.uestc.edu.cn/#/problem/show/1141 Descri ...
- CDOJ 1251 谕神的密码 贪心
谕神的密码 Time Limit: 20 Sec Memory Limit: 256 MB 题目连接 http://acm.uestc.edu.cn/#/problem/show/1251 Descr ...
- CDOJ 1132 酱神赏花 dp+单调栈降低复杂度+滚动数组
酱神赏花 Time Limit: 3000/1000MS (Java/Others) Memory Limit: 262143/262143KB (Java/Others) Submit St ...
- [动态规划] uestc oj A - 男神的礼物
A - 男神的礼物 Time Limit: 3000/3000MS (Java/Others) Memory Limit: 65535/65535KB (Java/Others) Lweb学长 ...
- [dp][uestc oj]J - 男神的约会
J - 男神的约会 Time Limit: 3000/1000MS (Java/Others) Memory Limit: 65535/65535KB (Java/Others) Submit ...
随机推荐
- 安装openstack出现的问题及解决
感谢http://www.cnblogs.com/nmap/p/6417163.html,参考这篇文章,我在虚拟机上部署成功了,后来因为虚拟机实在带不动,所以改装到物理机上,在实验室找到两台物理机,分 ...
- PHP中的常用正则表达式集锦
PHP中的常用正则表达式集锦: 匹配中文字符的正则表达式: [\u4e00-\u9fa5] 评注:匹配中文还真是个头疼的事,有了这个表达式就好办了 匹配双字节字符(包括汉字在内):[^\x00-\xf ...
- Linux下共享库嵌套依赖问题 (转载)
转自:http://my.oschina.net/moooofly/blog/506466 问题场景: 动态库 librabbitmq_r.so 内部依赖动态库 libevent_core.so 和 ...
- 【WIP】iOS 网络通讯
创建: 2018/06/05 网络通讯的基础 App Transport Security iOS9以后增加的功能 只允许满足Apple标准的https通信 ● 对ATS进行改动的话发布的审查时有可 ...
- 51nod 1099【贪心】
思路: 我们可以思考对于仅仅两个元素来说,A,B; 先选A的话是会 A.b+B.a; 先选B的话是会 B.b+A.a; 所以哪个小哪个就放前面; #include <cstdio> #i ...
- [HNOI2010] 弹飞绵羊 bounce
标签:分块.题解: 200000,而且标号从0开始,很符合分块的条件啊.看看怎么实现. 首先分成√n个区间,然后如果我们对于每一个位置i,求出一个Next[i]和step[i],分别表示跳到的后一个位 ...
- 企业级应用,如何实现服务化五(dubbo综合案例)
这是企业级应用,如何实现服务化第五篇.在上一篇企业级应用,如何实现服务化四(基础环境准备)中.已经准备好了zookeeper注册中心,和dubbo管理控制台.这一篇通过一个综合案例,看一看在企业级应用 ...
- Lock1
分布式锁1 Java常用技术方案 前言: 由于在平时的工作中,线上服务器是分布式多台部署的,经常会面临解决分布式场景下数据一致性的问题,那么就要利用分布式锁来解决这些问题.所以自己结合实际 ...
- Android 兼容包
http://www.cnblogs.com/kissazi2/p/3644848.html 在AndoridManifest.xml文件中可以查看项目最低支持的SDK版本 <uses-sdk ...
- Codeforces Round #497 (Div. 2)B. Turn the Rectangles
Bryce1010模板 http://codeforces.com/contest/1008/problems #include <bits/stdc++.h> using namespa ...