团体程序设计天梯赛-练习集 L1-005 考试座位号

3/15/2018

    题目很水。主要是学会了怎么重载>>,记录一下。

    因为输入的数据要存入变量中,故重载>>的函数参数表中要以引用的方式传参

题目链接: https://www.patest.cn/contests/gplt/L1-005

代码:

#include <iostream>
#include<queue>
#include<algorithm>
#include<cmath>
#include<cstring>
#include<map>

using namespace std;

map<int,int> m;

struct student { string id; int num1,num2; friend istream& operator>>(istream& c,student &a) { cin>>a.id>>a.num1>>a.num2; } friend ostream& operator<<(ostream& c,student a) { cout<<a.id<<' '<<a.num2<<endl; } }stu[1005];

int N,T,num;

int main() { ios::sync_with_stdio(false); while(cin>>N) { for(int i=0;i<N;i++) { cin>>stu[i]; m[stu[i].num1] = i; } cin>>T; for(int i=0;i<T;i++) { cin>>num; cout<<stu[m[num]]; } } }



Last Updated: 4/3/2022, 12:55:14 AM