中级天翼
奇怪的马拉松赛跑
题目详情
题目描述 Description
在一场奇怪的马拉松赛跑中,运动员们不是同一时间出发,但是比赛会记录每名运动员的出发时间和到达终点的时间,最终成绩以运动员跑完全程花的时间长短来决定。
给出n名运动员的姓名以及从起点出发的时间和到达终点的时间(格式:xx xx xx表示多少小时多少分多少秒),请按照他们跑完全程花的时间从小到大排名次,按名次输出n行,每行一个姓名。
输入描述 Input Description
输入n+1行,
第一行,输入一个正整数n;
接下来n行,每行输入一名运动员的姓名,出发时间(时、分、秒),到达时间(时、分、秒),用空格隔开。
输出描述 Output Description
输出n行,为排好序的运动员姓名。
样例输入 Sample Input
2 mike 06 06 59 08 44 06 yao 04 05 06 07 34 23
样例输出 Sample Output
mike yao
数据范围及提示 Data Size & Hint
1<n<=1000,时间为24小时制,比赛会在当天结束,即结束时间不会在后一天。
中级天翼
循环(int i=1;i<=n;i++){
a[i].shi2=a[i].shi1*3600+a[i].fen1*60+a[i].miao1*1;
a[i].fen2=a[i].shi*3600+a[i].fen*60+a[i].miao*1;
a[i].miao2=a[i].shi2-a[i].fen2;
}
这上面是把它们都转换为秒
输入
输出
丁博扬在2020-11-04 18:28:21追加了内容
这种思路可能有点乱
很容易在哪里报错
丁博扬在2020-11-07 07:38:34追加了内容
struct你知道吧
在struct里定义一个shi、fen、miao、shi1、fen1、miao1
再定义一个shi2、fen2、miao2
for先输入shi、fen、miao、shi1、fen1、miao1
然后按我的我for循环计数
丁博扬在2020-11-07 07:39:33追加了内容
bool cmp(struct名字 x,struct名字 y){
return x.miao2<y.miao2
}
丁博扬在2020-11-07 07:40:55追加了内容
bool cmp里面是比较他们奔跑的时间
丁博扬在2020-11-07 07:41:33追加了内容
奔跑的时间就是a[i].miao2=a[i].shi2-a[i].fen2;
丁博扬在2020-11-07 07:41:55追加了内容
打字不易
望采纳