• hihocoder-Week231-小Ho的强迫症


    hihocoder-Week231-小Ho的强迫症

    题目1 : 小Ho的强迫症

    时间限制:10000ms
    单点时限:1000ms
    内存限制:256MB

    描述

    小Ho在一条笔直的街道上散步。街道上铺着长度为L的石板,所以每隔L距离就有一条石板连接的缝隙,如下图所示。

    小Ho在散步的时候有奇怪的强迫症,他不希望脚踩在石板的缝隙上。(如果小Ho一只脚的脚尖和脚跟分别处于一条缝隙的两侧,我们就认为他踩在了缝隙上。如果只有脚尖或脚跟接触缝隙,不算做踩在缝隙上)  

    现在我们已知小Ho两只脚的长度F以及每一步步伐的长度D。如果小Ho可以任意选择起始位置,请你判断小Ho能否保持不踩缝隙散步至无穷远处?

    输入

    第一行是一个整数T,表示测试数据的组数。

    每组测试数据包含3和整数L, F和D,含义如上文所述。

    对于30%的数据: L <= 1000  

    对于60%的数据: L <= 100000

    对于100%的数据: L <= 100000000, F <= 100000000, D <= 100000000, T <= 20

    输出

    对于每组数据输出一行YES或者NO,表示小Ho是否能走到无穷远处。

    样例输入
    2  
    60 26 60  
    30 26 75 
    样例输出
    YES  
    NO

    题解:

      为了不让脚踩到线,要让跨步d 和 砖块l 之间的gcd, 大于脚步f。 

    #include <cstdlib> 
    #include <cstdio> 
    
    long long gcd(long long a, long long b)
    {
    	if(b == 0)
    	{
    		return a; 
    	}else{
    		return gcd(b, a%b); 
    	}
    }
    
    int main()
    {
    	int t; 
    	long long d, l, f, c; 
    	scanf("%d", &t); 
    	while(t--)
    	{
    		scanf("%lld %lld %lld", &l, &f, &d); 
    		if(f > l){
    			printf("NO
    ");
    			continue; 
    		}
    		if(l >= d){
    			c = gcd(l, d); 
    		}else{
    			c = gcd(d, l); 
    		}
    		if(c >= f)
    		{
    			printf("YES
    ");
    		}else{
    			printf("NO
    ");
    		}
    	}
    }
    

      

  • 相关阅读:
    Java基础之内部类介绍
    Java基础之泛型的使用
    Zookeeper的ZAB协议
    ssm框架整合快速入门
    maven创建web项目
    Shiro快速入门
    工作流Activiti新手入门学习路线整理
    Bootstrap-table实现动态合并相同行(表格同名合并)
    Bootstrap-datetimepicker日期插件简单使用
    java web定时任务---quartz
  • 原文地址:https://www.cnblogs.com/zhang-yd/p/10051177.html
Copyright © 2020-2023  润新知