题目
BUPT 2013 网研 ProblemB(oj)
给出两个时间(24 小时制),求第一个时间至少要经过多久才能到达第二个时间,给出的时间满足一定的形式,其中 x 和 y 分别代表小时和分钟。x 的取值范围是[0,24),y 的取值范围是[0, 60)
输入描述
第一行为数据组数T(1≤T≤50000)。
每组数据包括两行,分别代表两个时间。
输出描述
每组数据输出一行,表示最少经过的分钟数。
示例
输入
2
7:00
7:00
7:00
8:00
输出
0
60
题解
都换算成分钟相减
槽点是如果输出用cout会超时…要换成printf才能过
#include <bits/stdc++.h>
using namespace std;
int main(){
int t;
cin>>t;
for(int i=1;i<=t;i++)
{
int min1,min2,h1,h2,m1,m2;
scanf("%d:%d",&h1,&m1);
scanf("%d:%d",&h2,&m2);
min1=h1*60+m1;
min2=h2*60+m2;
if(min2>=min1)
printf("%d\n",min2-min1);
else
printf("%d\n",min2+24*60-min1);
}
}