猴子分桃问题
来源:互联网 发布:万博宣伟待遇 知乎 编辑:程序博客网 时间:2024/04/30 13:23
/*
【基础】:猴子分桃(normal)
Time Limit:4000MS Memory Limit:65536K
Total Submit:258 Accepted:81
Description
有一堆桃子和N只猴子,第一只猴子将桃子平均分成了M堆后,还剩了1个,它吃了剩下的一个,并拿走一堆。后面的猴子也和第1只进行了同样的做法,请问N只猴子进行了同样做法后这一堆桃子至少还剩了多少个桃子(假设剩下的每堆中至少有一个桃子)?而最初时的那堆桃子至少有多少个?
Input
输入包含二个数据,数据间用空格隔开。第一个数据为猴子的只数N(1≤N≤10),第二个数据为桃子分成的堆数M(2≤M≤7)。
Output
输出包含两行数据,第一行数据为剩下的桃子数,第二行数据为原来的桃子数。
Sample Input
3 2
Sample Output
1
15
*/
#include <stdio.h>
#define MAX 100000001
int main(void)
{
long m,n,end,start;
long i,j,k ;
scanf("%ld %ld",&n,&m) ;
for(i=1; i<= MAX ; i++)
{
for(j=1,k=i ; j<= n ; j++)
{
if ( (k*m)%(m-1) == 0)
{
k = (k*m)/(m-1)+1 ;
}
else
break ;
}
if(j > n )
{
printf("%ld %ld ",k,i);
break ;
}
}
return 0 ;
}
【基础】:猴子分桃(normal)
Time Limit:4000MS Memory Limit:65536K
Total Submit:258 Accepted:81
Description
有一堆桃子和N只猴子,第一只猴子将桃子平均分成了M堆后,还剩了1个,它吃了剩下的一个,并拿走一堆。后面的猴子也和第1只进行了同样的做法,请问N只猴子进行了同样做法后这一堆桃子至少还剩了多少个桃子(假设剩下的每堆中至少有一个桃子)?而最初时的那堆桃子至少有多少个?
Input
输入包含二个数据,数据间用空格隔开。第一个数据为猴子的只数N(1≤N≤10),第二个数据为桃子分成的堆数M(2≤M≤7)。
Output
输出包含两行数据,第一行数据为剩下的桃子数,第二行数据为原来的桃子数。
Sample Input
3 2
Sample Output
1
15
*/
#include <stdio.h>
#define MAX 100000001
int main(void)
{
long m,n,end,start;
long i,j,k ;
scanf("%ld %ld",&n,&m) ;
for(i=1; i<= MAX ; i++)
{
for(j=1,k=i ; j<= n ; j++)
{
if ( (k*m)%(m-1) == 0)
{
k = (k*m)/(m-1)+1 ;
}
else
break ;
}
if(j > n )
{
printf("%ld %ld ",k,i);
break ;
}
}
return 0 ;
}
- 猴子分桃问题
- 猴子分桃问题
- 猴子分桃问题
- 猴子分桃问题
- 猴子分桃问题
- 猴子分桃问题
- 猴子分桃问题
- 猴子分桃问题
- 猴子分桃问题
- 猴子分桃问题
- 猴子分桃问题
- 猴子分桃问题,有意思......
- 狄拉克的猴子分桃问题
- 五只猴子分桃问题
- 算法实验题 猴子分桃问题
- 猴子分桃问题的解决方法
- C语言算法-猴子分桃问题
- Java基础_猴子分桃问题
- Oracle SQL精妙SQL语句讲解
- 流水人家
- 怎样用VS2005进行三层结构应用程序的开发
- 天才就是这样炼成的
- 什么是NLP?
- 猴子分桃问题
- MyEclipse+JBoss开发EJB3.0
- AxWindowsMediaPlayer控件的属性
- MatLab7.0学习计划
- 给工具条加标题
- AD备份以及迁移
- [音乐]Clazziquai -Lover Boy-
- JAVA面试题
- MatLab学习笔记(1)