题目描述
Alice、Bob、Steven是好朋友,他们经常一起锻炼身体,偶也会开一场小比赛,今天他们将要进行的是跑步比赛,谁从起点跑到终点所花费的时间少最少谁就是第一名。现在根据他们的用时数据,分析一下谁是第一名。
输入
输入三行数据,格式均为 HH:MM:SS,即小时:分钟:秒数,时间数据保证正确合法。
分别代表Alice、Bob、Steven的跑步用时。
输出
输出第一名的名字。如果有并列第一的,按照字母表顺序输出名字,名字中间以空格分隔开。
输出答案后再输出回车换行。
样例输入
02:01:55
01:26:34
01:33:09
样例输出
Bob
#include <bits/stdc++.h>
using namespace std;
struct node{
string name;
string time;
};
node people[4];
bool cmp(node x,node y)
{
if(x.time==y.time)
return x.name<y.name;//升序排列
else
return x.time>y.time;
}
int main()
{
for(int i=1;i<4;i++)
{
if(i==1)people[i].name="Alice";
else if(i==2)people[i].name="Bob";
else if(i==3)people[i].name="Steven";
//然后开始判断
cin>>people[i].time;
}
//然后排序
sort(people+1,people+1+4,cmp);
for(int i=1;i<4;i++)
{
if(people[i].time==people[3].time)
cout<<people[i].name<<endl;
}
}
//cmp的运用