C语言编程:有1堆苹果共 m 个,由 n 只猴子按个数平均分配.有1堆苹果共 m 个,由 n 只猴子按个数平均分配.每次到达苹果堆放地的猴子只有1只,而且每个猴子都会平均分 1 次苹果.第1个到达的猴
来源:学生作业帮助网 编辑:作业帮 时间:2024/11/06 16:53:35
C语言编程:有1堆苹果共 m 个,由 n 只猴子按个数平均分配.有1堆苹果共 m 个,由 n 只猴子按个数平均分配.每次到达苹果堆放地的猴子只有1只,而且每个猴子都会平均分 1 次苹果.第1个到达的猴
C语言编程:有1堆苹果共 m 个,由 n 只猴子按个数平均分配.
有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 m,n,k,j,i,a,b;
scanf("%d,%d",&n,&k);
i=1;
j=1;
t:b=j;
do{
m=n*b+k;
b=(n*b+k)/(n-1);
a=(int)b;
if(b!=a)
{
j=j+1;
goto t;
}
i=i+1;
}while(i
C语言编程:有1堆苹果共 m 个,由 n 只猴子按个数平均分配.有1堆苹果共 m 个,由 n 只猴子按个数平均分配.每次到达苹果堆放地的猴子只有1只,而且每个猴子都会平均分 1 次苹果.第1个到达的猴
我给你个能运行的吧
#include
int main()
{
\x05int m=1;
\x05int n,k;
\x05int i,t;
\x05scanf("%d%d",&n,&k);
\x05for(m=1;;m++)
\x05{
\x05\x05t=m;
\x05\x05for(i=1;in&&t>=1)
\x05\x05{
\x05\x05\x05printf("%d \n",m);
\x05\x05\x05break;
\x05\x05}
\x05}\x05
\x05getchar();
}
3 1
25
请按任意键继续...