早教吧作业答案频道 -->其他-->
C编程猴子分桃问题有1堆桃子共m个,由n只猴子分配这些桃子.每次到达桃子堆放地的猴子只有1只,而且每个猴子都会平均分1次桃子.第1只到达的猴子将桃子平均分成n等份,但发现多k(k
题目详情
C编程猴子分桃问题
有1堆桃子共 m 个,由 n 只猴子分配这些桃子.每次到达桃子堆放地的猴子只有1只,而且每个猴子都会平均分 1 次桃子.
第1只到达的猴子将桃子平均分成 n 等份,但发现多 k ( k < n )个,于是,将多余的k个扔掉,然后拿走其中的1份.
第2只猴子同样将剩余的桃子又分成 n 等份,也发现多 k 个,并同样将多余的 k 个扔掉,然后拿走其中1份.
之后的每只猴子都这样(将剩余的桃子又分成 n 等份,也发现多 k 个,并将多余的 k 个扔掉,然后拿走其中1份).
现在假设最后一只猴子分配后至少可以拿走1个桃子,请根据输入的 n 和 k值,编程计算最小的 m.(比如,n=3,k=1,则最小的m是25,最后一个分得3个)
#include
int main()
{
int n,k,i,t,a;
double m;
scanf("%d %d",&n,&k);
for(t=1;;t++)
{
m=t*n+k;
for(i=n;i>1;i--)
{
m=m*3/2+k;
}
if(m==(int) m)
{
printf("%d\n",&m);
break;
}
}
return 0;
}
哪里错了 求修改
有1堆桃子共 m 个,由 n 只猴子分配这些桃子.每次到达桃子堆放地的猴子只有1只,而且每个猴子都会平均分 1 次桃子.
第1只到达的猴子将桃子平均分成 n 等份,但发现多 k ( k < n )个,于是,将多余的k个扔掉,然后拿走其中的1份.
第2只猴子同样将剩余的桃子又分成 n 等份,也发现多 k 个,并同样将多余的 k 个扔掉,然后拿走其中1份.
之后的每只猴子都这样(将剩余的桃子又分成 n 等份,也发现多 k 个,并将多余的 k 个扔掉,然后拿走其中1份).
现在假设最后一只猴子分配后至少可以拿走1个桃子,请根据输入的 n 和 k值,编程计算最小的 m.(比如,n=3,k=1,则最小的m是25,最后一个分得3个)
#include
int main()
{
int n,k,i,t,a;
double m;
scanf("%d %d",&n,&k);
for(t=1;;t++)
{
m=t*n+k;
for(i=n;i>1;i--)
{
m=m*3/2+k;
}
if(m==(int) m)
{
printf("%d\n",&m);
break;
}
}
return 0;
}
哪里错了 求修改
▼优质解答
答案和解析
你的算法有问题,我只能按自己的算法来处理
看了 C编程猴子分桃问题有1堆桃子...的网友还看了以下:
设A是整数集的一个非空子集,对于k∈A,如果k—1不属于A且k+1不属于A,那么k是A的一个“孤立 2020-04-06 …
帮忙算个概率,大虾们一种产品A的破损率是1/8,另一种产品的破损率为1/2.现要把两种产品放到同一 2020-04-27 …
分子是绝对值,分母有带根号的式子怎么求?就是点到直线的距离公式,可是那式子怎么求啊?比如说分子|c 2020-05-15 …
分子是绝对值,分母有带根号的式子怎么求?就是点到直线的距离公式,可是那式子怎么求啊?比如说分子|c 2020-06-03 …
求证:(∑Ai)∧k/n∧(k-1)≥(A1∧k-1)A2+(A2∧K-1)A3+...+(An∧ 2020-06-03 …
若规定E=的子集为E的第k个子集,其中k=,则(1)是E的第个子集;(2)E的第211个子集是若规 2020-06-11 …
原子核发生β衰变有三种情况:一种是放出负电子;另一种是发射正电子,只在人工放射物中出现;第三种衰变 2020-06-20 …
matlab已知式子求未知数'1=k/(1+a*exp^(b*6))','0.05=k/(1+a* 2020-07-23 …
概率题,急用急用.有编号为1,2,3,4,5,6的六个盒子,每个盒中各有10个球,其中第k号盒内有 2020-07-30 …
数学归纳法,刚才有一点还没弄明白,这个式子1+4+9··+n^2=1/6n{n+1}{2n+1}n 2020-08-01 …