zoukankan      html  css  js  c++  java
  • WUST Online Judge

    2147: 与时间赛跑

    Time Limit: 1 Sec  Memory Limit: 128 MB   64bit IO Format: %lld
    Submitted: 1100  Accepted: 142
    [Submit][Status][Web Board]

    Description

    orz做了一个奇怪的梦,他梦见自己在一个钟面上所在的位置为t1,目标位置为t2(t1和t2都为整点,且不相等)。时钟的钟面上有三根指针——时(h),分(m),秒(s)。
    时钟的三根指针都很长,因此orz不能绕过或跨过指针。
    求orz是否能从t1移动到t2。

    Input

    多组测试,每组输入5个整数h,m,s,t1,t2 (1≤h≤12,0≤m,s≤59,1≤t1,t2≤12,t1≠t2)。输入保证三根指针的位置不会和t1或t2重合。

    Output

    如果orz能到达t2输出Yes,否则输出NO

    Sample Input

    12 30 45 3 11
    

    Sample Output

    NO
    

    Author

    lsc

    代码如下:

    #include <stdio.h>
    
    int main() {
        double h, m, s, t1, t2, t;
        while (scanf("%lf%lf%lf%lf%lf", &h, &m, &s, &t1, &t2) != EOF) {
            if (t1 > t2) {
                t = t1;
                t1 = t2;
                t2 = t;
            }
            if (h == 12) h = 0;
            m = m + s / 60.0; h = h + m / 60.0;
            if (m >= 60) m /= 60;
            else if(m < 60) m /= 5;
            if (s >= 60) s /= 60;
            else if(s < 60) s /= 5;
            if ((h < t1 || h > t2) && (m < t1 || m > t2) && (s < t1 || s > t2))
                printf("Yes
    ");
            else if (h > t1 && m > t1 && s > t1 && h < t2 && m < t2 && s < t2)
                printf("Yes
    ");
            else printf("NO
    ");
        }
        return 0;
    }
    
    作者:McR
    本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。
  • 相关阅读:
    进行代码复审训练
    源代码管理工具调查
    软工作业PSP与单元测试训练
    P18 第四题
    开学第一课
    进行代码复审训练
    源代码管理工具调查
    软工 任务2
    软工课后作业01 P18第四题
    课堂作业1--自我介绍
  • 原文地址:https://www.cnblogs.com/mcr-tcp/p/9170685.html
Copyright © 2011-2022 走看看