杭电ACM4530 小Q系列故事——大笨钟

题目简介:

饱尝情感苦恼的小Q本打算隐居一段时间,但仅仅在3月25号一天没有出现,就有很多朋友想念他,所以,他今天决定再出来一次,正式和大家做个告别。
  
  小Q近来睡眠情况很差——晚上睡不着,早上又起不来!以前总是全勤的他这个月甚至迟到了好几次,虽然主管没说什么,但是他自己清楚此事的严重性。
  爱情没有了,小Q不想再失去面包,于是他决定买个闹钟,为求质量可靠,特意挑了个最贵的原装进口货!但是,正所谓屋漏偏逢连夜雨、人倒霉的时候喝凉水都塞牙,小Q新买的这个进口闹钟竟然每分钟总是比正确时间慢那么几秒!
  可怜的小Q愤愤然道:“真是一个大笨钟!”
  但是为了充分利用大笨钟,小Q还是尽力想办法搞清楚它的性能,希望能将其当作正常时钟使用。
  小Q从如下三方面去研究大笨钟:
  1、 假设正常时间走了t分钟,计算大笨钟走的时间;
  2、 假设大笨钟走了t分钟,计算正常时间走的时间;
  3、 小Q将大笨钟与当前时间调成正确时间,此时记为第0次,计算第k次大笨钟显示的时间与正确时间相同需要的时间(大笨钟的结构和普通时钟相同,即分为12大格,60小格)。

详细请见:http://acm.hdu.edu.cn/showproblem.php?pid=4530

分析:

     这完全就是一道数学题嘛,所以木有什么好说的,无非就是比例问题。下面就直接给出代码了~~·

     PS:小Q系列问题到此全部解决完了,不要怀念小Q哦~~再次PS:最近要忙期末考试,可能木有那么多时间写博了。。。我要对我自己说,考试加油!!!

#include <stdio.h>  
#include <stdlib.h>  
     
int main()  
{  
    int T,x,q,tk;  
    int m;  
    scanf("%d",&T);  
    int i;  
    for(i=0;i<T;i++)  
    {  
        scanf("%d",&x);  
        scanf("%d",&q);  
        int j;  
        for(j=0;j<q;j++)  
        {  
            scanf("%d",&m);  
            scanf("%d",&tk);  
            switch(m)  
            {  
                case 1:  
                    printf("%.2f\n",1.0*tk*(60-x));  
                    break;  
                case 2:  
                    printf("%.2f\n",1.0*tk*60*60/(60-x));  
                    break;  
                case 3:  
                    printf("%.2f\n",1.0*tk*60*60*60*12/x);  
                    break;  
     
     
            }  
        }  
    }  
    return 0;  
}

 转载请注明原文地址:http://uwind.iteye.com/blog/1922850

你可能感兴趣的:(ACM)