总时间限制: 1000ms 内存限制: 65536kB

描述
把M个同样的苹果放在N个同样的盘子里,允许有的盘子空着不放,问共有多少种不同的分法?(用K表示)5,1,1和1,5,1 是同一种分法。
输入
第一行是测试数据的数目t(0 <= t <= 20)。以下每行均包含二个整数M和N,以空格分开。1<=M,N<=10。
输出
对输入的每组数据M和N,用一行输出相应的K。
样例输入
1
7 3
样例输出
8

用数组a[i][j]来存放一个值,表示i个苹果放入J个盘子的方法

代码:

 #include<iostream>
#include<cstdio>
#include<cstring>
using namespace std;
int n,m,a[][];
void dp(){
for(int i=;i<=;i++) a[][i]=,a[i][]=;//表示0个苹果放入i个盘子的方法为1,表示i个苹果放入1个盘子的方法也为1
for(int i=;i<=;i++)
for(int j=;j<=;j++)
if(i>=j) a[i][j]=a[i-j][j]+a[i][j-];//a[i-j][j]每个盘子拿掉一个苹果,a[i][j-1]拿掉一个盘子
else a[i][j]=a[i][j-];
}
int main()
{
int T;
scanf("%d",&T);
while(T--){
dp();
scanf("%d%d",&n,&m);
printf("%d\n",a[n][m]);
}
return ;
}
 

OpenJudge 666:放苹果的更多相关文章

  1. OpenJudge 666:放苹果 // 瞎基本DP

    666:放苹果 总时间限制:  1000ms     内存限制:  65536kB 描述 把M个同样的苹果放在N个同样的盘子里,允许有的盘子空着不放,问共有多少种不同的分法?(用K表示)5,1,1和1 ...

  2. 666:放苹果(划分dp)

    666:放苹果 查看 提交 统计 提问 总时间限制:  1000ms 内存限制:  65536kB 描述 把M个同样的苹果放在N个同样的盘子里,允许有的盘子空着不放,问共有多少种不同的分法?(用K表示 ...

  3. noi 666 放苹果

    题目链接:http://noi.openjudge.cn/ch0206/666/ 和ural 1114题意类似,但是有顺序,5,1,1和1,5,1是同一种序列.不能直接枚举 d(i,j) 前 i 个盘 ...

  4. 递归--练习4--noi666放苹果

    递归--练习4--noi666放苹果 一.心得 写出状态后勇敢假设 二.题目 666:放苹果 总时间限制:  1000ms 内存限制:  65536kB 描述 把M个同样的苹果放在N个同样的盘子里,允 ...

  5. openjudge666:放苹果—题解

    (测试这里的markdown,同时也有纪念意义吧--第一次写的题解) 当时刚学递推的时候做的一道题 oj上的666题 666:放苹果 总时间限制: 1000ms 内存限制: 65536kB 描述 把M ...

  6. openjudge(POJ)-1664 放苹果

    对于n个盘子,m个苹果,我们要么在每个盘子上都放苹果,要么至少有一个盘子不放. 一个盘子不放就是f(m,n-1),全部都放的时候苹果就变成了n-m个,但是盘子的数目是不变的,因为此时还没有产生方案数, ...

  7. 刷题向》DP》放苹果 (normal)

    这篇博客可能字数比较多,而且很难讲清楚,我会努力给你们讲清楚: 首先,放苹果是一道DP,之所以难,是因为很难想到,我的确有同学用三维数组做出来,然而三维的的确比二维好理解,但三维复杂度太高,虽然DP一 ...

  8. oj放苹果

    题目描述 把M个同样的苹果放在N个同样的盘子里,允许有的盘子空着不放,问共有多少种不同的分法?(用K表示)5,1,1和1,5,1 是同一种分法. 输入 每个用例包含二个整数M和N.0<=m< ...

  9. POJ 1664 放苹果

    放苹果 Time Limit: 1000MS   Memory Limit: 10000K Total Submissions: 24985   Accepted: 15908 Description ...

随机推荐

  1. Ext.Net TextField Enter事件

    (1)DirectEvents触发后台 <ext:TextField ID="txt_Upc" runat="server" Width="15 ...

  2. Linux 下configure 参数配置与软件的安装与卸载

    Linux环境下的软件安装,并不是一件容易的事情:如果通过源代码编译后在安装,当然事情就更为复杂一些:现在安装各种软件的教程都非常普遍:但万变不离其中,对基础知识的扎实掌握,安装各种软件的问题就迎刃而 ...

  3. 《算法导论》习题解答 Chapter 22.1-6(求universal sink 通用汇点)

    思路:设置两个游标i指向行,j指向列,如果arr[i][j]==1,则i=max{i+1,j},j++:如果arr[i][j]==0,则j=max{i+1,j+1}. 伪代码: has_univers ...

  4. java 解析XML文档

    Java 解析XML文档 一.解析XML文档方式: 1.DOM方式:将整个XML文档读取到内存中,按照XML文件的树状结构图进行解析. 2.SAX方式:基于事件的解析,只需要加载XML中的部分数据,优 ...

  5. 使用Excel批量更改或插入SQL语句

    在平常中我们可以通过使用SQL批量更新或新增更新数据库数据,对于这些都是有逻辑的数据可以这样处理但是对于无逻辑的数据我们如何处理(这里的数据比较多). 我是通过Excel的方式来处理的.以下已插入为例 ...

  6. 【VMware虚拟化解决方案】 基于VMware虚拟化平台VDI整体性能分析与优化

    一.说一说 本来打算将前期项目里面出现的问题的分析思路与解决方法写出来,第一.疏导一下自己的思路,第二.分析并找出自身在技术层面所存在欠缺.但由于每个人都有一根懒经所以迟迟未动.今天突然发现51CTO ...

  7. ng-sortable-支持触屏的拖拽排序

    1.首先是到https://github.com/a5hik/ng-sortable/tree/master/dist下载所需的文件:ng-sortable.min.js,ng-sortable.cs ...

  8. ionic Modal

    在ionic中,modal也是添加控制器写服务的~ 在modal.html页面中增加控制器:ng-controller="aboutCtrl"记住要给这个添加控制器.头部使其关闭按 ...

  9. hdu-5703 Desert(水题)

    题目链接: Desert Time Limit: 2000/1000 MS (Java/Others)     Memory Limit: 65535/32768 K (Java/Others) Pr ...

  10. hdu 3062 2-SAT问题

    思路:裸的2-SAT. #include<map> #include<set> #include<cmath> #include<queue> #inc ...