n个水手分椰子问题 (递推)

水手分椰子:数学推导与Erlang实现 接下来的每一个水手都会对剩下的椰子进行同样的操作:将椰子分成五堆,然后将多余的一个椰子扔给海鸥。在本文中,我们通过数学推导的方式解决了水手分椰子的问题,并使用Erlang编程语言实现了我们的解决方案。接下来的每个水手都会对剩下的椰子进行同样的操作:将椰子分成五堆,然后将多余的一个椰子扔给海鸥。在本文中,我们通过数学推导的方式解决了水手分椰子的问题,并使用Erlang编程语言实现了我们的解决方案。水手分椰子是一个有趣的问题,我们将通过数学推导的方式解决这个问题,并使用Erlang编程语言实现我们的解决方案。 阅读详情
 n个水手分椰子
有n个水手来到一个岛上,采了一堆椰子后,因为疲劳都睡着了。一段时间后,第一个水手醒来,悄悄地将椰子等分成n份,多出m个椰子,便给了旁边的猴子,然后自己藏起一份,再将剩下的椰子重新合在一起,继续睡觉。不久,第二名水手醒来,同样将椰子了等分成n份,恰好也多出m个,也给了猴子。然而自己也藏起一份,再将剩下的椰子重新合在一起。以后每个水手都如此分了一次并都藏起一份,也恰好都把多出的m个给了猴子。第二天,n个水手醒来,发现椰子少了许多,心照不宣,便把剩下的椰子分成n份,恰好又多出m个,给了猴子。

对于给定的整数n,m(约定0<m<n<9从键盘输入),试求原来这堆椰子至少有多少个?


题解:

从最后一个人开始递推。分f[i]表示第i个人平分椰子每堆椰子的个数。所以他面临的椰子个数总数是f[i]*n+m。而这个椰子总是正好是上一个人平分之后拿走一堆剩余下来的。所以求上一个人每堆椰子的个数时要知道,这个数一定是整数。递推公式是f[i-1]=(f[i]*n+m)/(n-1),要满足所有f[i]都为整数,所以第一堆椰子个数进行枚举。最少是n-1-m个,然后每次增加n-1个,这样就能保证上一个人平分椰子个数是整数。就这样了。

#include<limits>
#include<queue>
#include<vector>
#include<list>
#include<map>
#include<set>
#include<deque>
#include<stack>
#include<bitset>
#include<algorithm>
#include<functional>
#include<numeric>
#include<utility>
#include<sstream>
#include<iostream>
#include<iomanip>
#include<cstdio>
#include<cmath>
#include<cstdlib>
#include<cstring>
#include<ctime>

#define LL long long
#define eps 1e-8
#define pi acos(-1)
#define INF 0x7fffffff
#define delta 0.98 //模拟退火递增变量
using namespace std;
LL f[20];
int main(){
	int n,m,i;
	scanf("%d%d",&n,&m);
	int k=n-1;
	f[1]=n-1-m;
	while(i<=(n+1)){
		double g=(f[i-1]*n+m)*1.0/(n-1);
		//g=g*(n-1)-m;
		if (floor(g)==g){
			f[i]=g;
			i++;
		}
		else{
			f[1]+=k;
			i=2;
		}
	}
	printf("原来椰子最少的个数是%lld\n",f[n+1]*n+m);
	k=1;
	for (i=n+1;i>=1;i--){
		printf("第%d个人面临的椰子个数是:%lld=%lld*%d+%d,藏掉%lld个\n",k++,f[i]*n+m,f[i],n,m);
	}
	return 0;
}


QML从入门到实战 - 完整学习路线 想入门 QML 开发?来 “从零开始学 QML” 专栏,海量源码 + 实战案例 + 大型项目拆解,手把手教你搞定跨平台 UI 设计,小白也能轻松掌握! 阅读详情

相关推荐

STM32CubeIDE(CUBE-MX hal库)----RTC时钟断电保持与时间校准实战

本文详细介绍了在STM32CubeIDE中使用CUBE-MX和HAL库实现RTC时钟断电保持与时间校准的实战方法。通过硬件配置、后备寄存器(BKP)操作及软件校准策略,确保嵌入式设备在断电后仍能保持准确时间,适用于智能电表、环境监测等物联网应用场景。

weixin_29189373的博客 218

C语言 递归 水手分椰子

n(1<n<=5)个水手在岛上发现一堆椰子,先由第1个水手把椰子分为等量的n堆,还剩下1个给了猴子,自己藏起1堆。然后,第2个水手把剩下的n-1堆混合后重新分为等量的n堆,还剩下1个给了猴子,自己藏起1堆。以后第3、4个水手依次按此方法处理。最后,第n个水手把剩下的椰子分为等量的n堆后,同样剩下1个给了猴子。请用迭代法编程计算并输出原来这堆椰子至少有多少个,n的值要求从键盘输入。若输入的n值超出要求的范围,程序输出"Error!提示:分成的等量的堆数应该与水手的数量一致.

ainuliba的博客 1483

Unity AssetBundle解包实战指南:从工具使用到编程解析

在游戏开发与资源管理中,资源打包与加载是核心技术环节。AssetBundle作为Unity引擎官方推荐的资源分发方案,其本质是一个包含头部信息、目录表、数据区及依赖关系的结构化文件系统,通过序列化机制将游戏资源转换为二进制格式。理解AssetBundle的机制对于实现高效的热更新、减少资源冗余、优化加载性能具有重要价值,广泛应用于游戏开发、竞品分析、技术研究等场景。本文聚焦AssetBundle解包这一实践需求,系统介绍如何利用AssetStudio、UABE等主流工具进行资源提取与可视化分析,并深入探讨通

weixin_28192383的博客 347

递归函数法解水手分椰子问题

​ 问题:水手分椰子 五个水手在岛上发现一堆椰子,先由第1个水手把椰子分为等量的5堆,还剩下1个给了猴子,自己藏起1堆。然后,第2个水手把剩下的4堆混合后重新分为等量的5堆,还剩下1个给了猴子,自己藏起1堆。以后第3、4个水手依次按此方法处理。最后,第5个水手把剩下的椰子分为等量的5堆后,同样剩下1个给了猴子。请用迭代法编程计算并输出原来这堆椰子至少有多少个

ajarspp114的博客 3621

永恒之蓝漏洞复现(ms17-010)

Metasploit Framework(MSF)是一款开源安全漏洞检测工具,附带数千个已知的软件漏洞,并保持持续更新。Metasploit可以用来信息收集、漏洞探测、漏洞利用等渗透测试的全流程,被安全社区冠以“可以黑掉整个宇宙”之名。刚开始的Metasploit是采用Perl语言编写的,但是再后来的新版中,改成了用Ruby语言编写的了。在kali中,自带了Metasploit工具。

渗透之路,攻防之间皆学问 2万+

【NI Multisim 14.0原理图设计基础——元器件分类】

电阻(RESISTOR):该元器件栏中的电阻都是标称电阻,是根据真实电阻元器件而设计的,其电阻值不能改变。 排阻(RESISTOR PACK):相当于多个电阻并列封装在一个壳内,它们具有相同的阻值。 电位器(POTENTIOMETER):即可调电阻,可以通过键盘字母动态调节电阻,大写表示增加电阻值,小写表示减小电阻值,调节增量可以设置。 电容(CAPACITOR):所有电容都是无极性的,不能改变参数,没有考虑误差,也未考虑耐压大小。 电解电容器(CAP_ELECTROLIT):所有电容都是有极性的,“+”极

RL2698853114的博客 4万+

一颗椰子糖机器人_椰子糖热量有多高?看完数据后让人避犹不及!

原标题:椰子糖热量有多高?看完数据后让人避犹不及!在众多的糖果中,椰子糖算是历史比较悠久的了,小编还记得在小时候就有椰子糖了,那时候能够吃到一颗糖果真的是很开心,尤其是那种吃完满嘴都是奶香味的椰子糖。随着近些年的发展,喜欢椰子糖的人数非但没有减少反而呈现增长的趋势,看来椰子糖的受欢迎程度确实很高,那么你知道椰子糖热量有多高吗?​ 椰子糖虽然好吃,但是椰子糖热量也不低,平均每100克椰子糖含有的热量...

weixin_39882589的博客 603

2026.3.9:具身智能之GraspNet:Ubuntu24.04安装GraspNet

本文详细介绍了在Ubuntu24.04系统下安装GraspNet具身智能框架的全过程。主要包括:1) 创建Python3.9虚拟环境;2) 安装CUDA12.8和PyTorch2.7.0等基础依赖;3) 编译安装pointnet2、knn和graspnetAPI三个核心组件;4) 修改源码适配新版PyTorch;5) 下载预训练权重并成功运行demo。安装过程中特别提示了可能遇到的报错处理方案,最终在GPU环境下实现了GraspNet的部署运行。整个流程涵盖了从环境配置到项目运行的完整步骤,为具身智能研究者

拥抱具身智能,昇腾Ascend C 205

水手分椰子问题

水手分椰子问题

m0_59072510的博客 1956

康复训练监测系统:基于YOLOv8的患者动作规范识别

本文系统介绍了基于YOLOv8的康复训练动作规范识别系统,从理论背景、数据准备、模型训练、推理应用到UI界面,提供了完整技术链条及代码示范。希望对康复领域的智能监测应用提供参考和借鉴。

YOLO 453

MOSFET雪崩特性参数解析

但是,一些电源在输出短路时,初级中会产生较大的电流,加上初级电感,器件就会有雪崩损坏的可能,因此在这样的应用条件下,就要考虑器件的雪崩能量。对于那些在MOSFET的D和S极产生较大电压的尖峰应用,就要考虑器件的雪崩能量,电压的尖峰所集中的能量主要由电感和电流所决定,因此对于反激的应用,MOSFET关断时会产生较大的电压尖峰。雪崩击穿能量标定了器件可以容忍的瞬时过冲电压的安全值,其依赖于雪崩击穿需要消散的能量。EAS单脉冲雪崩击穿能量, EAS标定了器件可以安全吸收反向雪崩击穿能量的高低。

Airer_00的博客 808

水手分椰子

5个水手分椰子 问题描述 5个水手来到一个岛上,采了一堆椰子后,因为疲劳都睡着了。一段时间后,第一个水手醒来,悄悄地将椰子等分成5份,多出一个椰子,便给了旁边的猴子,然后自己藏起一份,再将剩下的椰子重新合在一起,继续睡觉。不久,第二名水手醒来,同样将椰子等分成5份,恰好也多出一个,也给了猴子。然后自己也藏了一份,再将剩下的椰子重新合在一起。以后每个水手都如此分了一次并藏了一份,也恰好都把多出的一个给了猴子。第二天,5个水手醒来,发现椰子少了许多,心照不宣,便把剩下的椰子分成了5份,恰好又多出一个,给了猴子。

yzxjsw 1663

智能硬件产品 App 全球发布 第 1 章:全球 App 发布战略设计

本章阐述智能硬件 App 全球发布战略,涵盖市场分析、竞争格局、用户画像及资源配置。通过制定可执行的全球化推广路径,整合地区法规合规、渠道分发策略与营销活动设计,助力团队快速进入主流商店并确立品牌影响力。同时构建可量化的 KPI 监控体系,指导项目进度追踪与效果复盘,确保产品迭代持续优化,降低运营总成本。

moton2017的博客 156

C练习——N个水手分椰子

五个水手在岛上发现一堆椰子,先由第1个水手把椰子分为等量的5堆,还剩下1个给了猴子,自己藏起1堆。然后,第2个水手把剩下的4堆混合后重新分为等量的5堆,还剩下1个给了猴子,自己藏起1堆。最后,第5个水手把剩下的椰子分为等量的5堆后,同样剩下1个给了猴子。N个水手每次分成N组加一呢?假如某水手面前 有y个椰子,那么前一个水手面前有 y/4*5+1, 设第五位水手面前。/4*5+1,进行4次迭代,若某次y值对n取模不为一,则将x+1再试。循环N-1 次求y值,每次对y进行判定,不符合则x增1再循环N-1次。

2301_76271519的博客 1375

怀旧版电脑GBC模拟器

再现原版GBC掌机的界面,电脑运行连游戏界面都一样大小,很怀旧,很真实,(英文版)强烈推荐,很小的文件,很难才找到的。

visio安装包

Microsoft Office Visio 是一款专业的制图软件。利用经过更新的形状、协作工具和数据链接图表,创建专业级图表以简化复杂的信息。

python四级_python编程(四级)3、递归与递推

迭代法迭代法解决问题的思路:利用迭代算法解决问题,需要做好以下三个方面的工作:确定迭代变量在可以用迭代算法解决的问题中,至少存在一个直接或间接地不断由旧值递推出新值的变量,这个变量就是迭代变量。建立迭代关系式所谓迭代关系式,指如何从变量的前一个值推出其下一个值的公式(或关系)。迭代关系式的建立是解决迭代问题的关键,通常可以顺推或倒推的方法来完成。对迭代过程进行控制在什么时候结束迭代过程?这是编写迭...

weixin_39855706的博客 557

SIMATIC S7-1200, S7-1500 PID 控制[手册]

SIMATIC S7-1200, S7-1500 PID 控制[手册]

算法分析与设计(第三版)王红梅 课后习题答案 第四章

()内的内容 看作为 1 个即可。

weixin_46489233的博客 3349

文档:亲测可用解决vnc灰屏,黑屏,鼠标大黑叉情况

主要解决vnc-viewer灰屏,黑屏,鼠标大黑叉等现象,详细见文档。

算法学习——递推之水手分椰子

算法描述 五个水手来到一个岛上,采了一堆椰子后,因为疲劳都睡着了。一段时间后,第一个水手醒来,悄悄地将椰子等分成五份,多出一个椰子,便给了旁边的猴子,然后自己藏起一份,再将剩下的椰子重新合在一起,继续睡觉。不久,第二名水手醒来,同样将椰子了等分成五份,恰好也多出一个,也给了猴子。然而自己也藏起一份,再将剩下的椰子重新合在一起。以后每个水手都如此分了一次并都藏起一份,也恰好都把多出的一个给了猴子。...

weixin_30773135的博客 2387

zstu.4014.水手分椰子(数学推导)

深入浅出学算法015-水手分椰子 Time Limit: 5 SecMemory Limit: 64 MB Submit: 1827Solved: 524 Description n个水手来到一个岛上,采了一堆椰子后,因为疲劳都睡着了。一段时间后,第一个水手醒来,悄悄地将椰子等分成n份,多出一个椰子,便给了旁边的猴子,然后自己藏起一份,再将剩下的椰子重新合在一起,继续睡觉。不久...

weixin_30375247的博客 945

水手分椰子类型题简易通解公式及推导(完整版)

转自:http://blog.sina.com.cn/s/blog_a1494e1301013w7v.html 序:“水手分椰子”是趣味数学题”水手、猴子和椰子”的习惯简称,在中国被改为(五猴分桃)这是一个世界有名的趣味数学题,首先刊登在美国《星期六晚邮报》上,据说,最早是由偉大物理学家狄拉克提出来的,这一貌似简单的问题曾困扰住了他为了获得简便的計算方法,他把问题提供给当时的一些

acm_1361677193的专栏 9551

第七周练兵区编程题

2.学生可以在作业截止时间之前不限次数提交答案,系统将取其中的最高分作为最终成绩。 1 谐均值计算(4分) 题目内容: 两数值的谐均值可以这样计算:首先对两数值的倒数取平均值,最后再取倒数。编写一个带有两个double参数的函数,计算这两个参数的谐均值。函数原型为: double Calculate(double x,double y); 程序运行结果示例1: Input two doubles:...

爱学习的小强的博客 2161

C语言,函数皮毛。

上个星期学到C函数部分,感觉这个题很有意思,想给大家分享一下,顺便也给一些意见优化一下 水手分椰子  n(1 提示:分成的等量的堆数应该与水手的数量一致. 输入提示信息: "Input n(1 输入格式:  "%d" 输出格式:"y=%d\n" 输入错误提示信息:"Error!\n"   #include int divide(int n, i

原谅我这一生,放纵不羁爱自由, 1490

C++ 水手分椰子

经典循环结构题目

m0_73772116的博客 1074

c语言五个水手分椰子答案,zstu.4014.水手分椰子(数学推导)

深入浅出学算法015-水手分椰子Time Limit: 5 SecMemory Limit: 64 MB Submit: 1827Solved: 524Descriptionn个水手来到一个岛上,采了一堆椰子后,因为疲劳都睡着了。一段时间后,第一个水手醒来,悄悄地将椰子等分成n份,多出一个椰子,便给了旁边的猴子,然后自己藏起一份,再将剩下的椰子重新合在一起,继续睡觉。不久,第二名水手醒来,...

weixin_28760171的博客 2048

水手和椰子

题目描绘 5各水手在岛上发现一堆椰子,先由第一个水手把椰子分为5堆,还剩下1个给了猴子,自己藏起1堆.然后,第2个水手把剩下的4堆混合后重新分为等量的5堆,还剩下一个给了猴子,自己藏起1堆。以后第3、4各水手依次按此方法处理。最后第五个水手把剩下的椰子分为等量的5堆后,同样剩下1个给了猴子。请用迭代法编程计算并输出原来这堆椰子至少有多少个。 参考答案 若某水手对面的椰子数是y个,则他前面一个...

qq_37720915的博客 4718

纯白水手

眼看着他们跟我擦肩而过 白的云 红的墙 人的毕生是被固定在不同形状之内的 他们是岛上的一道景致线 雷同的建造 远远的看见他们 才发现 它的外形随我而转变 人生不缺美 你被多大的空间环境包抄 仍是找不着相机 转身发明他们微

489

水手

导读:   歌曲:水手   歌手:郑智化   水手   编:ansen   苦涩的沙吹痛脸庞的感觉   像父亲的责骂母亲的哭泣   永远难忘记   年少的我喜欢一个人在海边   卷起裤管光着脚丫踩在沙滩上   总是幻想海洋的尽头有另一个世界   总是以为勇敢的水手是真正的男儿   总是一副弱不禁风孬种的样子   在受人欺负的时候总是听见水手说   他说风雨中这点痛算什么   擦干泪不要怕至

Gerry的专栏 1631
上一篇: 蓝桥杯 nim博弈 高僧斗法
下一篇: hdu1430(康托展开+BFS)
Modiz
博客等级 码龄14年 77粉丝 297原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值