https://pintia.cn/problem-sets/994805260223102976/problems/994805281567916032
查询结构体类问题 可以用数组/map将查询的关键字(用数组的话当然就得要求关键字是整数了)映射到结构体其它信息
#include <iostream>
using namespace std;
typedef struct{
string num;
int rightpos;
}stu;
int main()
{
int n,m,quir;
scanf("%d",&n);
stu stud[1001]; //考生数是1-1000 所以要设1001个(0-1000号)
//map<int,stu> stud; //map方法只需要将上面一行改成这行即可其它不用动 当然得加上map的头文件
char num1[17];
int testpos1,rightpos1;
for (int i=0; i<n; i++){
scanf("%s %d %d",num1,&testpos1,&rightpos1);
stud[testpos1].rightpos=rightpos1;
stud[testpos1].num=num1;
}
scanf("%d",&m);
for (int i=0; i<m; i++){
scanf("%d",&quir);
cout<<stud[quir].num<<" "<<stud[quir].rightpos<<endl;
}
return 0;
}