zoukankan      html  css  js  c++  java
  • UVA-10339 Watching Watches

    题目大意:有两个钟表,开始时都指向00:00,但是一个每天慢m秒,另一个每天慢k秒,问两个表再次指向同一时刻时的所指时间。精确到分钟,四舍五入。

    题目解析:先求出再次指向同一时间时实际经过的天数,天数d=12*3600/abs(m-k)。然后可求每个表总共慢下来的秒数,余下不再细说,看代码。

    注意:求时间和分钟的时侯最好按秒、分、时逐级求,否则易错。

    代码如下:

    # include<iostream>
    # include<cstdio>
    # include<cmath>
    # include<algorithm>
    using namespace std;
    int main()
    {
        int m,k;
        while(~scanf("%d%d",&m,&k))
        {
            if(m==k){
                printf("%d %d 12:00
    ",m,k);
                continue;
            }
            int c=fabs(m-k);
            double d=12.0*3600.0/c;
            long long n=d*(24*3600-m);
            n%=43200;
            int mm=n/60;
            n%=60;
            if(n>=30)
                ++mm;
            int hh=mm/60;
            mm%=60;
            if(hh==0)
                hh=12;
            printf("%d %d %02d:%02d
    ",m,k,hh,mm);
        }
        return 0;
    }
    
  • 相关阅读:
    2014-04-23 总结
    14-5-13
    PHP
    14-5-8
    ajax
    14-5-6
    14-5-5
    PHP初解
    14-4-30
    14-4-29
  • 原文地址:https://www.cnblogs.com/20143605--pcx/p/4672345.html
Copyright © 2011-2022 走看看