//A1022 Digital Library (30 分)
#include <stdio.h>
#include <iostream>
#include <set>
#include <map>
using namespace std;
const int maxn= 10010;
int n, m;
map<string, set<string> > search[6];
int main(){
scanf("%d", &n);
for(int i = 0; i < n; i++){
string kw, id, bt, au, pber, pby;
cin >> id;
getchar();
getline(cin, bt);
search[1][bt].insert(id);
getline(cin, au);
search[2][au].insert(id);
while(cin >> kw){
search[3][kw].insert(id);
char c = getchar();
if(c == '\n') break;
}
getline(cin, pber);
search[4][pber].insert(id);
cin >> pby;
search[5][pby].insert(id);
}
scanf("%d", &m);
for(int i = 0; i < m; i++){
int num;
string query;
scanf("%d: ", &num);
getline(cin, query);
cout << num << ": " << query << endl;
if(search[num].find(query) != search[num].end()){
for(auto it : search[num][query]){
cout << it << endl;
}
}else{
printf("Not Found\n");
}
}
return 0;
}
PAT甲级-1022 Digital Library (30 分)
最新推荐文章于 2024-10-04 17:07:53 发布