L1-018 大笨钟 (10 point(s)) (测试点四)
Posted Atl212
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了L1-018 大笨钟 (10 point(s)) (测试点四)相关的知识,希望对你有一定的参考价值。
-
hh - 12 + bool(mm)
看别人代码里面发现了这个神奇的用法,bool() 意思应该是 mm 非零的时候返回 1 。
-
写完的时候卡了一个测试点,想了想应该是时间边界的问题。重新看了题目,同时试了下 12:00 的时候是什么。结果果然有问题什么也没有输出。
同时根据条件 “午夜00:00到中午12:00期间,笨钟是不敲的” 所以这里得改一下,要小于等于。
if(hh <= 12)
#include <bits/stdc++.h>
using namespace std;
int main(){
int hh, mm;
char c;
cin >> hh >> c >> mm;
// 前半天
if(hh <= 12)
printf("Only %02d:%02d. Too early to Dang.", hh, mm);
else{
// 换算 非整点
hh = hh - 12 + bool(mm);
while(hh--) cout << "Dang";
}
}
以上是关于L1-018 大笨钟 (10 point(s)) (测试点四)的主要内容,如果未能解决你的问题,请参考以下文章