POJ 1664 放苹果
来源:互联网 发布:暴漫淘宝 编辑:程序博客网 时间:2024/05/24 05:39
放苹果
Time Limit: 1000MS Memory Limit: 10000K
Total Submissions: 27444 Accepted: 17413
Description
把M个同样的苹果放在N个同样的盘子里,允许有的盘子空着不放,问共有多少种不同的分法?(用K表示)5,1,1和1,5,1 是同一种分法。
Input
第一行是测试数据的数目t(0 <= t <= 20)。以下每行均包含二个整数M和N,以空格分开。1<=M,N<=10。
Output
对输入的每组数据M和N,用一行输出相应的K。
Sample Input
1
7 3
Sample Output
Time Limit: 1000MS Memory Limit: 10000K
Total Submissions: 27444 Accepted: 17413
Description
把M个同样的苹果放在N个同样的盘子里,允许有的盘子空着不放,问共有多少种不同的分法?(用K表示)5,1,1和1,5,1 是同一种分法。
Input
第一行是测试数据的数目t(0 <= t <= 20)。以下每行均包含二个整数M和N,以空格分开。1<=M,N<=10。
Output
对输入的每组数据M和N,用一行输出相应的K。
Sample Input
1
7 3
Sample Output
8
整数拆分中的放球模型,格路模型模型什么的都弱爆了,就是不过。搜了一下别人的代码,发现了这个定理:
整数n拆分成最多不超过m个数的和的拆分数 和 n拆分成最大的拆分数不超过m的拆分数相等。
在这题的样例中,将整数7拆分成最多不超过3个数的拆分数 等价于 7拆分成最大的拆分数不超过3的拆分数相等。没标注释的代码是AC的。
/*include <iostream>#include <cstdio>int f(int m){ int sum=1; for(int i=2;i<=m;i++) sum*=i; return sum;}int main(void){ int t; scanf("%d",&t); while(t--) { int n,m; scanf("%d%d",&m,&n); int ans=f(n+m-1)/f(m)/f(n-1); // int ans=f(m-1)/f(n-1)/f(m-n); printf("%d\n",ans); } return 0;}*/#include <iostream>#include <cstdio>#include <memory.h>using namespace std;int a[100],b[100];void mother(int i,int num,int n){//i代表第i个元素,第i个元素的数量有num个,需要计算的最大指数n for(int j=0;j<=n;j++) for(int k=0;k<=num&&k*i+j<=n;k++) b[k*i+j]+=a[j]; for(int j=0;j<=n;j++) { a[j]=b[j]; b[j]=0; }}int main(void){ int t; scanf("%d",&t); while(t--) { memset(a,0,sizeof(a)); memset(b,0,sizeof(b)); int m,n; scanf("%d%d",&m,&n); a[0]=1; for(int i=1;i<=n;i++) mother(i,m,m); // int sum=0; // for(int i=0;i<=n;i++) // sum+=a[i]; printf("%d\n",a[m]); } return 0;}
0 0
- poj 1664 放苹果
- poj 1664 放苹果
- poj 放苹果 1664
- POJ 1664 放苹果
- POJ 1664 放苹果
- POJ 1664 放苹果
- POJ-1664-放苹果
- poj - 1664 - 放苹果
- poj 1664 放苹果
- POJ-1664(放苹果)
- poj 1664 放苹果
- POJ 1664 放苹果
- POJ 1664 放苹果
- POJ 1664 放苹果
- POJ 1664 放苹果
- poj 1664 放苹果
- poj 1664 放苹果
- POJ 1664 放苹果
- 第55题 Unique Binary Search Trees II
- mybatis知识总结(二)框架分析
- GBK与Unicode对照表的生成
- 欢迎使用CSDN-markdown编辑器
- mybatis知识总结(三)配置分析
- POJ 1664 放苹果
- Linux的多线程下载工具Axel
- opencv图像读取,视频读取
- python浮点数的is_integer
- Advanced lighting models
- ubuntu14.04LTS下安装flash player
- leetcode 第104题 Maximum Depth of Binary Tree
- java可视化编程,MyEclipse插件:windowBuilder
- 【毕设】每日项目问题2