题目:https://www.patest.cn/contests/pat-a-PRactise/1039
代码:
#include<cstdio> #include<cstring> #include<cstdlib> #include<cmath>#include<vector>#include<algorithm> using namespace std; const int N=40010;const int M=26*26*26*10+1;vector<int> s[M];int getId(char name[]){ int t=0; for(int i=0;i<3;i++){ t=t*26+(name[i]-'A'); } t=t*10+(name[3]-'0'); return t;}int main() { char str[5]; int n,k; scanf("%d%d",&n,&k); for(int i=0;i<k;i++){ int course,temp; scanf("%d%d",&course,&temp); for(int j=0;j<temp;j++){ scanf("%s",str); int id=getId(str); s[id].push_back(course); } } for(int i=0;i<n;i++){ scanf("%s",str); int id=getId(str); sort(s[id].begin(),s[id].end()); printf("%s %d",str,s[id].size()); for(int j=0;j<s[id].size();j++){ printf(" %d",s[id][j]); } printf("/n"); } system("pause"); }
新闻热点
疑难解答