对抗赛的问题

描述

明明是光明小学四年级(1)班的学生,他所在的班里共40名学生,恰巧男女各一半,本学期班主任决定进行男女对抗赛,她要求男女同学各选出一名组长,然后由组长对20名组员编号(1-20),每次测验时男同学的1号与女同学的1号对比,男2号与女2号对比,…,记下男女赢的人次。下一次,可以换一个组长也可以不换,同样方法再进行对比。现在明明想知道每次测验是哪个为组长,他(她)领导下的组员赢了多少次?

输入

第一行,测验的次数n(n<10)。

每次测验用三行数据描述:

第一行为以空格分开的男组长的姓名及女组长的姓名;

第二行为1到20号男同学的测验成绩;

第三行为1到20号女同学的测验成绩。

输出

对于每次测验输出一行数据,分别为男组长姓名、赢的人次、女组长姓名、赢的人次。

输入样例 1 

2
Jack Marry
80 92 67 88 98 76 40 68 87 92 99 89 78 72 65 66 50 84 92 96
88 90 80 82 88 77 68 76 90 79 88 95 92 88 60 70 76 85 80 90
Tom Candy
90 97 93 80 84 81 92 85 88 94 99 91 83 87 78 88 68 83 99 100
89 92 63 92 76 81 99 78 93 94 96 98 92 94 91 97 88 87 82 88

输出样例 1

Jack 8 Marry 12
Tom 8 Candy 10

提示

分析:我们可以定义一个表示组别信息的结构体,它包含了组长的姓名、20名组员的成绩及测验赢的人次。

#include<bits/stdc++.h>
using namespace std;
struct st{
	string a;
	int b[107];
}; 
int main()
{
	int n;
	cin>>n;
	for(int i=1;i<=n;i++){
		st a,b;
		cin>>a.a>>b.a;
		for(int i=1;i<=20;i++){
			cin>>a.b[i];
		}
		for(int i=1;i<=20;i++){
			cin>>b.b[i];
		}
		int s=0,s2=0;
		for(int i=1;i<=20;i++){
			if(a.b[i]>b.b[i]){
				s++;
			}
		}
		for(int i=1;i<=20;i++){
			if(a.b[i]<b.b[i]){
				s2++;
			}
		}
		cout<<a.a<<" "<<s<<" "<<b.a<<" "<<s2<<endl;
	}
	return 0;
}
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值