39

讲个笑话,cy设计的oj,用cin输入会超时哦

#include <iostream>
#include <vector>
#include <algorithm>
using namespace std;
vector<int>list[180000];

int getid(const char *name) {
    int id = 0;
    for(int i = 0; i < 3; i++) {
        id = 26 * id + (name[i] - 'A');
    }
    id = id * 10 + (name[3] - '0');
    return id;
}

int main()
{
    int N,K,stu_id;
    char s[5];
    scanf("%d %d",&N,&K);
    for(int i=1;i<=K;i++)
    {
        int course_id,stu_num;
        scanf("%d %d",&course_id,&stu_num);
        for(int j=0;j<stu_num;j++)
        {
            scanf("%s",s);
            stu_id=getid(s);
            list[stu_id].push_back(course_id);
        }
    }
    for(int i=0;i<N;i++)
    {
        scanf("%s",s);
        stu_id=getid(s);
        sort(list[stu_id].begin(),list[stu_id].end());
        cout<<s<<' '<<list[stu_id].size();
        for(int j=0;j<list[stu_id].size();j++)
            cout<<" "<<list[stu_id][j];
        cout<<endl;
    }
}
原文地址:https://www.cnblogs.com/KRCheung/p/6659963.html