题解 | 放苹果

放苹果

https://www.nowcoder.com/practice/a2a1d0266629404fba582d416d84b6a0


#include <iostream>
#include <algorithm>
#include <cstring>
using namespace std;
int n, m;
int d[25][25];
int main()
{
    while(cin>>m>>n){
        memset(d,0,sizeof d);
        for(int i=0;i<=m;i++) d[i][1]=1;//将i个苹果放在一个盘子中
        for(int i=1;i<=n;i++){//一个/0个苹果放在盘子中
            d[1][i]=1;
            d[0][i]=1;
        }
        for(int i=2;i<=m;i++){
            for(int j=2;j<=n;j++){
                if(i>=j) d[i][j]=d[i][j-1]+d[i-j][j];//苹果多
                else d[i][j]=d[i][i];//盘子数量多
            }
        }
        cout<<d[m][n]<<'\n';
    }
    return 0;
}

全部评论

相关推荐

牛客51274894...:照片认真的吗,找个专门拍证件照的几十块钱整端正点吧,要不就别加照片
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务