组合之分苹果问题(22)[通俗易懂]

组合之分苹果问题(22)[通俗易懂]1问题将n个苹果分给m个人,苹果都一样,人都一样。如果把4个苹果分给3个人,121112211是一种可能。问一共有多少种方法。2分析1当苹果比人数少时,就等同于将等数量的苹果分给等数量的人,因为人数较多,空的人都一样,所以做等效处理。比如2个苹果分给3个人和2个苹果分给2个人结果是一样的。2当苹果数<=人数时,等效于:有人没有苹果和所有人都分到苹果两种可能,然…

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全系列IDE稳定放心使用

1 问题

将n个苹果分给m个人,苹果都一样,人都一样。如果把4个苹果分给3个人,121 112 211是一种可能。

问一共有多少种方法。

2 分析

1 当苹果比人数少时,就等同于将等数量的苹果分给等数量的人,因为人数较多,空的人都一样,所以做等效处理。比如2个苹果分给3个人和2个苹果分给2个人结果是一样的。

2 当苹果数<=人数时,等效于:有人没有苹果和所有人都分到苹果两种可能,然后进行递归。

3 代码

#include <iostream>
using namespace std;

int dfs(int n, int m) {
	//n代表苹果数,m代表人数
	if (n < m)   	//如果苹果比人数少
		return dfs(n, n);    //n个苹果分给n个人
	if (n == 0) 	//没有苹果了
		return 1;
	if (m <= 0)
		return 0;	//没有人了
	int r1 = dfs(n, m - 1); //有人没有分到苹果,至少有一个人没有分到苹果
	int r2 = dfs(n - m, m);	//所有人都分到苹果,相当于每个人至少分到一个苹果
	return r1 + r2;	
}

void test() {
	int n, m;	//n是苹果数,m是人数
	cin >> n >> m;
	cout << dfs(n, m) << endl;
}

int main() {
	test();
	system("pause");
	return 0;
}

 

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/182993.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • C++字符串加密_c++字符串连接函数

    C++字符串加密_c++字符串连接函数有的时候,使用C++进行爬虫操作时,会涉及到一些请求参数的加密,例如对utf8的中文进行加密,我们用js对如下字符串进行加密的结果如下:加密前字符串:keras-lx-还魂草.z01URL加密后:keras-lx-%E8%BF%98%E9%AD%82%E8%8D%89.z01使用网页在线加密工具和使用js加密效果是一样的自己用C++写的URL加密代码如下://URL编码.cpp:…

    2025年7月7日
    0
  • 线程同步的四种方式

    线程同步的四种方式转载地址: http://blog.csdn.net/ebowtang/article/details/29905309一,什么是线程同步和互斥同步就是协同步调,按预定的先后次序进行运行。如:你说完,我再说。这里的同步千万不要理解成那个同时进行,应是指协同、协助、互相配合。线程同步是指多线程通过特定的设置(如互斥量,事件对象,临界区)来控制线程之间的执行顺序(即所谓的同步)也可以说是在线程之间通过…

    2022年7月15日
    13
  • 网站被挂马了如何清理_网站在线挂马检测工具

    网站被挂马了如何清理_网站在线挂马检测工具
     
    您好,今天我们讲下挂马的危害和处理办法。挂马是常见的对网站和客户都影响巨大的危害之一。
          上海快网的经验是:如果是在访问出来的源文件的头上,或是最后有被加代码,这个一般是网站文件被要改了,或是ARP,如果是源文件的很多数据位置(中间),那一般是数据库被人挂了。
         不完全统计,90%的网站都被挂过马,挂马是指在获取网站或者网站服务器的部分或者全部权限后,在网页文件中插入一段恶意代码,这些恶意代码主要是一些包括IE等漏洞利用代码,用户访问被挂马

    2022年9月30日
    1
  • ARM方案公司,三星S5PV210核心板,「建议收藏」

    ARM方案公司,三星S5PV210核心板,「建议收藏」核心业务:高通、MTK、三星等解决方案定制开发

    2022年10月14日
    0
  • wordpress博客近期变慢之解决(fonts.google.com)「建议收藏」

    wordpress博客近期变慢之解决(fonts.google.com)

    2022年1月18日
    34
  • URL 字符编码建议收藏

    URL编码会将字符转换为可通过因特网传输的格式。URL-统一资源定位器Web浏览器通过URL从web服务器请求页面。URL是网页的地址,比如http://www.cnblogs.co

    2021年12月20日
    45

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号