首页 > 代码库 > L1-018. 大笨钟

L1-018. 大笨钟

L1-018. 大笨钟

时间限制
400 ms
内存限制
65536 kB
代码长度限制
8000 B
判题程序
Standard
作者
陈越

微博上有个自称“大笨钟V”的家伙,每天敲钟催促码农们爱惜身体早点睡觉。不过由于笨钟自己作息也不是很规律,所以敲钟并不定时。一般敲钟的点数是根据敲钟时间而定的,如果正好在某个整点敲,那么“当”数就等于那个整点数;如果过了整点,就敲下一个整点数。另外,虽然一天有24小时,钟却是只在后半天敲1~12下。例如在23:00敲钟,就是“当当当当当当当当当当当”,而到了23:01就会是“当当当当当当当当当当当当”。在午夜00:00到中午12:00期间(端点时间包括在内),笨钟是不敲的。

下面就请你写个程序,根据当前时间替大笨钟敲钟。

输入格式:

输入第一行按照“hh:mm”的格式给出当前时间。其中hh是小时,在00到23之间;mm是分钟,在00到59之间。

输出格式:

根据当前时间替大笨钟敲钟,即在一行中输出相应数量个“Dang”。如果不是敲钟期,则输出:

Only hh:mm.  Too early to Dang.

其中“hh:mm”是输入的时间。

输入样例1:
19:05
输出样例1:
DangDangDangDangDangDangDangDang
输入样例2:
07:05
输出样例2:
Only 07:05.  Too early to Dang.






 1 #include <iostream>
 2 #include <stdio.h>
 3 using namespace std;
 4 
 5 
 6 int main()
 7 {
 8     char b[6];
 9     cin >> b;
10     int a[6];
11     for(int i=0; i<5; i++)
12     {
13       switch (b[i])
14         {
15         case 0:
16             a[i] = 0;
17             break;
18         case 1:
19             a[i] = 1;
20             break;
21         case 2:
22             a[i] = 2;
23             break;
24         case 3:
25             a[i] = 3;
26             break;
27         case 4:
28             a[i] = 4;
29             break;
30         case 5:
31             a[i] = 5;
32             break;
33         case 6:
34             a[i] = 6;
35             break;
36         case 7:
37             a[i] = 7;
38             break;
39         case 8:
40             a[i] = 8;
41             break;
42         case 9:
43             a[i] = 9;
44             break;
45         default:
46             break;
47         }
48     }
49     int hour, minute;
50 //    scanf("%d:%d", &hour, &minute);
51 hour = a[0]*10 + a[1];
52 minute = a[3]*10 + a[4];
53 //cout << hour << "    "<< minute << endl;
54     if(hour>=12)
55     {
56         if(minute==0)
57         {
58             if(hour==12)
59                 printf("Only %s.  Too early to Dang.\n", b);
60             else
61                 for(int i=0; i<hour-12; i++)
62                     printf("Dang");
63         }
64         else
65         {
66             for(int i=0; i<hour+1-12; i++)
67                 printf("Dang");
68         }
69     }
70     else
71     {
72 //        if(hour==0&&minute!=0)
73 //        {
74 //           printf("Only 00:%d.  Too early to Dang.\n", minute);
75 //        }
76 //        if(minute==0&&hour!=0)
77 //        {
78 //            printf("Only %d:00.  Too early to Dang.\n", hour);
79 //        }
80 //        if(minute==0&&hour==0)
81 //        {
82 //            printf("Only 00:00.  Too early to Dang.\n");
83 //        }
84 //        if(minute!=0&&hour!=0)
85 //        {
86 
87 
88         printf("Only %s.  Too early to Dang.\n", b);
89 
90     }
91 
92     return 0;
93 
94 }

行末不能随便加换行

L1-018. 大笨钟