团体程序设计天梯赛-练习集 L1-005 考试座位号
Apale 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]]; } } }