1. 程式人生 > >L1-018. 大笨鐘

L1-018. 大笨鐘

微博上有個自稱“大笨鐘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.
注意邊界0:00和12:00都不敲鐘的
#include <cstdio>
using namespace std;

int a, b;

int main() {
    scanf("%d:%d", &a, &b);
    if ((a >= 0 && a < 12) || (a == 12 && b == 0)) {
        printf("Only %02d:%02d.  Too early to Dang.\n", a, b);
        return 0;
    }
    int cnt = a - 12;
    if (b != 0) cnt++;
    for (int i = 0; i < cnt; i++) {
        printf("Dang");
    }

    return 0;
}
 

檢視原文:http://iluhao.top/archives/761