关闭

nyoj 189 兔子的烦恼(一)(辗转相除法求最大公约数)

标签: nyoj189nyoj 189nyoj189兔子的烦恼一
1424人阅读 评论(0) 收藏 举报

兔子的烦恼(一)

时间限制:1000 ms  |  内存限制:65535 KB
难度:2
描述

在一座山上有n个山洞(每个洞从0~n-1分别编号),这山上有一只兔子躲在山洞里,有一只狼,从编号为0的山洞开始入洞,每隔m-1个洞,再次入洞抓兔子,现在问,兔子能否避免这场灾难?

例如:m=2 and n=6, 狼将要进入的山洞号为:0,2,4,0;

输入
有多组测试数据,不超过1000组;
每组有两个整数m,n(0<m,n<=1000);
注意:程序以文件结束符“EOF”结束输入。
输出
兔子能避免这场灾难输出YES,否则输出NO;
样例输入
1 22 2
样例输出
NOYES
来源
hdu
上传者

苗栋栋

这道题说到底就是求m和n的最大公约数。在杭电上也做过这道题,不是用的这样的方法。结果同样的方法在这里wa了,说明在杭电做的方法错了。也说明杭电的这道题的数据很水。

 
#include<stdio.h>
int gcd(int m,int n)
{
	int temp,r;
	if(m>n)
	temp=m,m=n,n=temp;
	while(m)
	r=n%m,n=m,m=r;
	return n;
}
int main()
{
	int m,n;
	while(scanf("%d %d",&m,&n)!=EOF)
	{
		if(m==1||n==1)
		{
			printf("NO\n");
			continue;
		}
		if(gcd(m,n)==1)
		printf("NO\n");
		else
		printf("YES\n");
	}
	return 0;
}        


2
0
查看评论
发表评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场

C++算法 - 辗转相除法(求最大公约数)

问题及代码: /* * Copyright (c) 2014, 烟台大学计算机与控制工程学院 * All rights reserved. * 文件名称:.cpp * 作 者:何小乐 * 完成...
  • hexiaole1994
  • hexiaole1994
  • 2014-10-29 22:19
  • 5847

C语言第七篇:辗转相除法求最大公约数

辗转相除法求最大公约数
  • qq_30866297
  • qq_30866297
  • 2016-03-24 11:35
  • 4304

辗转相除法求最大公约数

  • 2011-08-05 15:57
  • 290B
  • 下载

POINTERS ON C 第七章编程练习2辗转相除法求最大公约数

  • 2014-04-19 16:00
  • 665B
  • 下载

辗转相除法求最大公约数

  • 2015-02-13 16:44
  • 878B
  • 下载

辗转相除法求最大公约数(C语言)

用辗转相除法求最大公约数 算法描述: m对n求余为a, 若a不等于0 则 m <- n, n <- a, 继续求余 否则 n 为最大公约数 最小公倍数 = 两个数的积 / 最大公约数 #includ...
  • leaf6094189
  • leaf6094189
  • 2011-05-25 10:20
  • 20902

辗转相除法求两个数的最大公约数

一)最大公约数含义         最大公约数(greatest common divisor,简写为gcd;或highest common factor,简写为hcf),指某几个整数共有因子中最大...
  • gyunling
  • gyunling
  • 2013-06-04 10:43
  • 695

辗转相除法求两个数的最大公约数

下面来自百度: 辗转相除法 古希腊数学家欧几里德 辗转相除法:辗转相除法是求两个自然数的最大公约数的一种方法,也叫欧几里德算法。 一般地,如果求自然数a和b的最大公约数(a>b),那么 ...
  • a987860319
  • a987860319
  • 2014-02-07 15:27
  • 2509

【牛客网】【网易2016研发工程师编程题】【辗转相除法求最大公约数】

小易经常沉迷于网络游戏.有一次,他在玩一个打怪升级的游戏,他的角色的初始能力值为 a.在接下来的一段时间内,他将会依次遇见n个怪物,每个怪物的防御力为b1,b2,b3...bn. 如果遇到的怪物防御力...
  • ALiTuTu
  • ALiTuTu
  • 2016-02-25 20:39
  • 1245

辗转相除法求两数的最大公约数(递归实现)

辗转相除法求两数的最大公约数(递归实现) 最大公约数定义:如果有一个自然数a能被自然数b整除,则称a为b的倍数,b为a的约数。几个自然数公有的约数,叫做这几个自然数的公约数。公约数中最大的一个公约数...
  • shen_gan
  • shen_gan
  • 2012-10-26 14:26
  • 822
    个人资料
    • 访问:1393860次
    • 积分:20733
    • 等级:
    • 排名:第443名
    • 原创:600篇
    • 转载:18篇
    • 译文:0篇
    • 评论:374条
    你只管努力 其它交给时光

    点图片联系我


    唐唐女神

    点图片联系我

    访问统计
    Flag Counter
    博客专栏
    最新评论