与地球足球赛不同的是,火星足球赛的人数不能固定为11人,可以多人,比赛时间也会更长。
比赛时的裁判是机器人,判罚非常严厉。如果有人拿到红黄牌,机器人裁判会自动记录当时的情况。
【输入表格】
第一行输入主队名称,第二行输入客队名称,球队名称长度不超过20个字符。
第三幕是一个整数n(0≤n≤90),表示红黄牌的犯规次数。
接下来的N行,每行包含4个部分,用空格分隔,表示犯罪情况:
不同球队的球员可能有相同的号码。同队球员人数不同,犯规记录按时间顺序排列。
【输出形式】
输出是按时间顺序记录的红牌。如果时间相同,主队排名领先。如果同时有很多人同时得到红牌,那么数量就很大了。每张红牌和红线包含3部分:球队名称、犯规球员号码、红牌时间。
如果比赛中没有红牌,则输出“No Red Card”
【样本输入】
MC CSKA 9 28 a 3 y62 h 25 y 66 h 42 y 70 h 25 y 77 a 4 y 79 a 25 y 82 h 42 r 89 h 16 y 90 a 13 r
【输出样例】
MC 25 70 MC 42 82 CSKA 13 90
[示例说明]
【评价标准】
#include
#include

using namespace std;
struct zq{//定义足球的结构体
int time;//犯规时间
string team;//队伍名字
int number;//队员编号
string color;//黄牌还是红牌
};
int cmp1(const zq &a,const zq &b){//自己定义一个比较
if(a.time==b.time&&a.team==b.team)//当同一队伍成员同时间犯规
return a.number>b.number;//编号大的先输出
return a.time>h>>a>>n;
zq one[10000],print[10000];
for(int i=0;i>one[i].time>>one[i].team>>one[i].number>>one[i].color;
}
int sum=0;//犯规成员的数量
for(int i=0;i
if(one[j].team==one[i].team&&one[j].number==one[i].number&&one[j].color=="y")
one[j].color="r"; //第二次得到黄牌时就把当前颜色变为红牌
}
}
if(one[i].color=="r"){//对于所有红牌的队员统计整理
sum++;
print[sum].time=one[i].time;
if(one[i].team=="h")
print[sum].team=h;
else if(one[i].team=="a")
print[sum].team=a;
print[sum].number=one[i].number;
}
}
sort(print,print+sum+1,cmp1);
if(sum==0)
cout<<"No Red Card";
else{
for(int i=1;i<=sum;i++){
cout<
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请联系本站,一经查实,本站将立刻删除。如若转载,请注明出处:http://www.liexianghudong.com/html/tiyuwenda/9513.html