欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

P2386放苹果带来的n种考量

程序员文章站 2022-05-09 13:47:18
...

题目描述

把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
#include <iostream>
#include <cstring>
using namespace std;
int main()
{
    int m,t,n;
    cin>>t;
    int dp[110][110];
    for(int i=0;i<=15;i++)
    {
        for(int j=1;j<=15;j++)
        {
            if(j==1||i==0){dp[i][j]=1;}
            else if(i<j){dp[i][j]=dp[i][i];}
            else{dp[i][j]=dp[i-j][j]+dp[i][j-1];}
        }
    }
    for(int r=0;r<t;r++)
    {
    cin>>m>>n;
    cout<<dp[m][n]<<endl;
    }
    return 0;
}

 

相关标签: 洛谷