7-179 小文的心理阴影时刻
小文十分守时,和别人约会一般会提前k秒钟到,如果对方不准时,他等候k秒钟后也会自行离开。如果称这段时间为小文的心理阴影时间,请编程输出小文的心理阴影时间的起始和结束时刻。
输入格式:
有多组输入数据。先读入一个整数n,接下来包含n行,每行有一个24小时制的时分秒的时间和k秒数
输出格式:
输出心理阴影时间的起始时刻和结束时刻(如果大于等于24:00:00,则从00:00:00开始计数,如果小于00:00:00,则从23:59:59秒开始倒数)
输入样例:
1 12 10 30 40
输出样例:
12:09:50 12:11:10
#include <stdio.h>
int main() {
int T;
scanf("%d", &T);
for (int i = 0; i < T; ++i) {
int hour, min, sec, during, total;
scanf("%d %d %d %d", &hour, &min, &sec, &during);
total = hour * 3600 + min * 60 + sec;
during %= 86400;
if (total - during < 0) {
printf("%02d:%02d:%02d ", (total - during+86400) / 3600, (total - during+86400) % 3600 / 60, (total - during+86400) % 3600 % 60);
}else {
printf("%02d:%02d:%02d ", (total - during) / 3600, (total - during) % 3600 / 60, (total - during) % 3600 % 60);
}
if(total + during>=86400){
printf("%02d:%02d:%02d\n", (total + during-86400) / 3600, (total + during-86400) % 3600 / 60, (total + during-86400) % 3600 % 60);
}else {
printf("%02d:%02d:%02d\n", (total + during) / 3600, (total + during) % 3600 / 60, (total + during) % 3600 % 60);
}
}
return 0;
}
思路
- 题目的核心关键点就在把时分全部转换成秒
- 最后处理一下时间就行了