华师一附中OI组

 找回密码
 立即注册
搜索
热搜: 活动 交友 discuz
查看: 884|回复: 1
打印 上一主题 下一主题

P2386 放苹果

[复制链接]

738

主题

1485

帖子

5422

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
5422
跳转到指定楼层
楼主
发表于 2018-7-3 16:39:01 | 只看该作者 回帖奖励 |正序浏览 |阅读模式
https://www.luogu.org/problemnew/show/P2386
题目描述
把M个同样的苹果放在N个同样的盘子里,允许有的盘子空着不放,问共有多少种不同的分发(5,1,1和1,1,5是同一种方法)

输入输出格式
输入格式:
第一行是测试数据的数目t(0 <= t <= 20),以下每行均包括二个整数M和N,以空格分开。1<=M,N<=10

输出格式:
对输入的每组数据M和N,用一行输出相应的K。

输入输出样例
输入样例#1:
1
7 3
输出样例#1:
8
输入样例#2:
3
3 2
4 3
2 7
输出样例#2:
2
4
2
回复

使用道具 举报

9

主题

158

帖子

470

积分

华一学生

积分
470
QQ
沙发
发表于 2018-8-26 19:18:54 | 只看该作者
  1. #include<iostream>
  2. #include<cstring>
  3. using namespace std;
  4. int t;
  5. int m,n,dp[11][11];
  6. int main()
  7. {
  8.     cin>>t;
  9.     for(int i=0;i<=10;i++)
  10.         for(int j=1;j<=10;j++)
  11.         {
  12.             if(!i||j==1)dp[i][j]=1;
  13.             else if(i<j)dp[i][j]=dp[i][i];
  14.             else dp[i][j]=dp[i][j-1]+dp[i-j][j];
  15.         }
  16.     while(t--)
  17.     {
  18.         cin>>m>>n;
  19.         cout<<dp[m][n]<<endl;
  20.     }
  21.     return 0;
  22. }
复制代码
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|Archiver|手机版|小黑屋|服务支持:DZ动力|华师一附中OI组  

GMT+8, 2024-12-26 15:19 , Processed in 0.098393 second(s), 26 queries .

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表