输入两组时间(h时,m分,s秒),计算平均时间,两组时间差不超过一小时,h在0-11之间。
输入样例:
1 20 30 1 30 30
输出样例:
1 25 30
注意:需添加头文件
#include <cmath>
#include <iostream>
using namespace std;
int main()
{
int h1, h2, m1, m2, s1, s2, t1, t2, tt, aveh, avem, aves;
cin >> h1 >> m1 >> s1 >> h2 >> m2 >> s2;
//判断输入的时间是否合法
if(h1>11 || h1<0 || h2>11 || h2<0 || m1>59 || m1<0 || m2>59 || m2<0 || s1>59 || s1<0 || s2>59 || s2<0)
return;
t1 = h1*3600 + m1*60 + s1; //以秒为单位计算
t2 = h2*3600 + m2*60 + s2;
if(abs(t1-t2)>3600) //时间差不能超过一小时
return;
tt = (t1+t2)/2;
aveh = tt/3600;
avem = (tt - aveh*3600)/60;
aves = tt - aveh*3600 - avem*60;
cout << aveh << " " << avem << " " << aves;
return 0;
}
计算跑步平均时间
小王围操场跑圈,每次跑三圈,输入行数,每行有九个整数,表示每圈所用分,秒,毫秒。输出每次平均时间。
输入样例:
2
1 10 100 1 20 100 1 30 100
2 10 100 1 20 100 1 30 100
输出样例:
1 20 100
1 40 100
int main()
{
int n, m1, s1, ms1, m2, s2, ms2, m3, s3, ms3, t, am, as, ams;
cin >> n;
while(n--)
{
cin >> m1 >> s1 >> ms1 >> m2 >> s2 >> ms2 >> m3 >> s3 >> ms3;
t = ((m1+m2+m3)*60000 + (s1+s2+s3)*1000 + ms1 + ms2 + ms3)/3;
am = t/60000;
as = (t-am*60000)/1000;
ams = t - am*60000 - as*1000;
cout << am << " " << as << " " << ams << endl;
}
return 0;
}