花椰妹要去约会了!
因为花椰妹已经是老女人了,所以必然需要打扮一番,抹点粉啊,涂涂口红啦,画点眼影啊……许久过后,花椰妹已然变成美女了!!
花椰妹看了下时间,已经不早了,可是桌面上还有好多好多瓶瓶罐罐没用,这怎么行!花椰妹现在想知道,她还有多少时间可以用于化妆?
输入格式
读入两个标准格式的时间,有小时,有分钟,有秒,格式如:hⓂ️s,即 时:分:秒。
输出格式
输出这两个时间的差(秒为单位)。
数据范围
1 <= h <= 24, 0 <= m <= 60, 0 <= s <= 60 。
所有的时间都是合法的,且上面的时间大于下面的时间。
输出时每行末尾的多余空格,不影响答案正确性
样例输入
11:10:10
10:30:30
样例输出
2380
解题思路:
#include <iostream>
#include <algorithm>
#include <vector>
#include <cstdio>
#include <cstdlib>
using namespace std;
int main(){
int bhour,bminute,bsecond;
int ehour,eminute,esecond,sum = 0;
scanf("%d:%d:%d",&ehour,&eminute,&esecond);
scanf("%d:%d:%d",&bhour,&bminute,&bsecond);
if(bhour == ehour){
if(bminute == eminute){
sum += esecond - bsecond;
}else if(bminute < eminute ){
if(esecond >= bsecond){
sum += (esecond - bsecond) + (eminute - bminute) * 60;
}else{
eminute -= 1;
sum += esecond + 60 - bsecond + (eminute - bminute) * 60;
}
}
}else if(bhour < ehour){
if(bminute == eminute){
sum += esecond - bsecond + (ehour - bhour) * 3600;
}else if(bminute < eminute ){
if(esecond >= bsecond){
sum += (esecond - bsecond) + (eminute - bminute) * 60 + (ehour - bhour) * 3600;
}else if(esecond < bsecond){
eminute -= 1;
sum += esecond + 60 - bsecond + (eminute - bminute) * 60 + (ehour - bhour) * 3600;
}
}else if(bminute > eminute){
if(esecond >= bsecond){
ehour -= 1;
sum += (esecond - bsecond) + (eminute + 60 - bminute) * 60 + (ehour - bhour) * 3600;
}else if(esecond < bsecond){
eminute -= 1;
ehour -= 1;
sum += esecond + 60 - bsecond + (eminute + 60 - bminute) * 60 + (ehour - bhour) * 3600;
}
}
}
cout << sum << endl;
return 0;
}