华为机试 放苹果

news/2025/2/15 22:30:16/

题目描述

题目描述

把m个同样的苹果放在n个同样的盘子里,允许有的盘子空着不放,问共有多少种不同的分法?(用K表示)5,1,1和1,5,1 是同一种分法。

数据范围:0<=m<=10,1<=n<=10。

本题含有多组样例输入。

输入描述:

输入两个int整数

输出描述:

输出结果,int型

示例1

输入

7 3

输出

8

题目链接:https://www.nowcoder.com/practice/bfd8234bb5e84be0b493656e390bdebf?tpId=37&tqId=21284&rp=1&ru=%2Fta%2Fhuawei&qru=%2Fta%2Fhuawei%2Fquestion-ranking&tab=answerKey

思路:这题还是没有那么简单的,最容易想到的放苹果策略就是:m个苹果放在n个盘子里,每个苹果有n种可能性,然后我就瞎想,就想不出来。实际上要把这种策略抽象一下,不管怎么决策每一个苹果的方法,最后的结果总是有的,有的,那结合起来就是:

1.每个盘子放1个,然后继续处理,put(m-n,n)

2.有1个盘子不放,然后处理put(m,n-1)

仔细想想所有的情况都能被这种策略覆盖。比如7个苹果2个盘子,前3轮都是每个盘子放1个苹果,最后的时候只能选择1个盘子不放了,因为put(1-2,2) 中1-2=-1小于0,只能执行put(1,2-1)返回1。

分析一下递归结束条件:

如果苹果数  小于 0,那肯定放不成功,所以返回0。1个苹果2个盘子都放,咋可能呢,put(1-2,2)返回0。

如果 苹果数  == 或者 == ,直接返回1。比如put(2-2,2),2个苹果2个盘子都各放1个,返回1没问题。put(3-2,2),3个苹果2个盘子都各放1个还剩1个苹果,返回1没问题。

如果只有1盘子,你有多少苹果也只有1种放置方法啊,返回1没问题。

#include <iostream>using namespace std;
int putApple(int m,int n)
{if(m<0)return 0;//比如put(1-2,2),1个苹果没法每个篮子都放一个嘛,那就是失败,返回0就行了if(m==0 || m==1){return 1;//如果剩0个苹果刚好结束嘛,是1种情况,比如put(2-2,2);还有一种put(3-2,2),只剩1个苹果了,那就能1种情况嘛}if(n==1){return 1;//只剩下1个篮子,只能是1种情况}return putApple(m-n,n)+putApple(m,n-1);
}int main(){int m, n;while(cin>>m>>n){cout<<putApple(m,n)<<endl;}return 0;
}

 


http://www.ppmy.cn/news/449632.html

相关文章

苹果第一次怼了华为 是因为抢跑5G的华为走上了苹果模式?

文 | 静静 来源 | 网易科技 PK友商&#xff0c;告别五伏一安&#xff0c;产品跌落/防水测试视频……2019年的苹果发布会越来越有“安卓味儿”了。高高在上的苹果&#xff0c;终于要撸起袖子&#xff0c;下场厮杀了。 曾几何时&#xff0c;苹果新品发布会成为科技界的“春晚”&a…

让苹果“沦为配角”的华为都发布了什么?

作者 | 胡巍巍 出品 | CSDN&#xff08;ID&#xff1a;CSDNnews&#xff09; 不知是巧合还是故意为之&#xff0c;继昨天苹果召开春季发布会后&#xff0c;华为也在巴黎召开了P30系列发布会。 发布之前&#xff0c;一直把苹果视为对手的华为&#xff0c;发推特“感谢”苹果&…

scratch lenet(4): 开根号的C语言实现

文章目录 1. 目的2 二分法求开根号2.1 数学原理&#xff1a;单调函数2.2 代码实现&#xff1a;注意事项2.3 代码实现&#xff1a; 完整代码2.4 验证结果 3. 牛顿法3.1 数学原理&#xff1a;迭代求解3.2 代码实现3.3 结果 4. 卡马克快速法4.1 原理4.2 代码实现4.3 结果 5. 完整代…

中效袋式过滤器风量与安装

广州特耐苏净化设备有限公司详细介绍&#xff1a;中效袋式过滤器安装(中效袋式过滤器风量) 中效袋式过滤器安装 空气过滤器的安装步骤以及维护方法介绍 初中高效air filter在运输、安装及使用过程中&#xff0c;要按照要求进行&#xff0c;以保证使用效果。初中高效空气过滤…

新风柜的特长及新风柜的选购方法

广州特耐苏净化设备有限公司详细介绍&#xff1a;新风柜的特长及新风柜的选购方法 1.新风柜配置专业空气过滤器&#xff0c;对新风进行预处理&#xff0c;保证送入室内的清新空气洁净无尘&#xff0c;并可根据对新风的特殊要求&#xff0c;配置高性能的过滤装置。 2.新风柜产…

【MySQL数据库】事务和存储引擎

【MySQL数据库】事务和存储引擎 一&#xff0c;事务1事务的概念 二 、事务的ACID特点2.1原子性2.2一致性&#xff08;Consistency&#xff09;2.3隔离性2.4持久性 三、脏读、不可重复读、幻读、丢失更新3.1脏读3.2不可重复读3.3幻读3.4丢失更新 四、事务的隔离级别事务隔离级别…

【程序】基于simulink车辆动力学可视化仿真

一、前言 车辆动力学是研究汽车在行驶过程中的运动学和力学特性的学科。它研究车辆在不同路面条件、不同驾驶情况下的加速、制动、转向等运动状态&#xff0c;并通过建立数学模型来分析和优化车辆的性能和安全性。车辆动力学是汽车工程、机械工程和物理学等学科的交叉领域&…

大屏手机到底需不需要贴膜?

现在市面上不少手机都会以康宁玻璃为卖点&#xff0c;说这种玻璃防刮耐磨&#xff0c;无需贴膜 网上我们常常看到这样的测试&#xff0c;一些人用钥匙和刀在iPhone屏幕上使劲的虐待&#xff0c;而结果丝毫无损&#xff0c;给人一种不会刮花的印象 许多朋友刚买iPhone回来时以为…