#include<cstdio>#include<iostream>#include<string>#include<string.h>#include<algorithm>#include<queue>#include<map>#include<set>using namespace std;void query(map<string,set<int>>&m,string &str){ if(m.find(str)!=m.end()) { for(set<int>::iterator it=m[str].begin();it!=m[str].end();it++) { PRintf("%07d/n",*it); } } else cout<<"Not Found/n";}int main(){ //freopen("input.txt","r",stdin); int n; int id; map<string,set<int>> title,author,key,pub,year; string ttitle,tauthor,tkey,tpub,tyear; cin>>n; for(int i=0;i<n;i++) { cin>>id; getchar(); getline(cin,ttitle); title[ttitle].insert(id); getline(cin,tauthor); author[tauthor].insert(id); while(cin>>tkey) { key[tkey].insert(id); char c=getchar(); if(c=='/n') break; } getline(cin,tpub); pub[tpub].insert(id); getline(cin,tyear); year[tyear].insert(id); } int m; int num; cin>>num; for(int i=0;i<num;i++) { scanf("%d: ",&m); string temp; getline(cin,temp); cout<<m<<": "<<temp<<endl; if(m==1) query(title,temp); if(m==2) query(author,temp); if(m==3) query(key,temp); if(m==4) query(pub,temp); if(m==5) query(year,temp); } //freopen("con","r",stdin); system("pause"); return 0;}
新闻热点
疑难解答