PAT甲级-1039 Course List for Student (25分)

题目:1039 Course List for Student (25分)
分析:map的排序,在输出时不能用cin,否则最后一个测试点会超时,用scanf即可
#include <iostream>
#include<cstring>
#include<vector>
#include<stdio.h>
#include<queue>
#include<math.h>
#include<stack>
#include<algorithm>
#include<map>
#include<set>
#define MAX 99999999
typedef long long ll;
using namespace std;
int n,m;
map<string,vector<int>>stu;
int main()
{
    
    
    cin>>n>>m;
    for(int i = 0;i<m;i++)
    {
    
    
        int a,b;
        scanf("%d%d",&a,&b);
        for(int j = 0;j<b;j++)
        {
    
    
            string x;
            cin>>x;
            stu[x].push_back(a);
        }
    }
    for(int i = 0;i<n;i++)
    {
    
    
        string x;
        cin>>x;
        sort(stu[x].begin(),stu[x].end());
        cout<<x<<" "<<stu[x].size();
        for(int i = 0;i<stu[x].size();i++)
            cout<<" "<<stu[x][i];
        cout<<endl;
    }
    return 0;
}

猜你喜欢

转载自blog.csdn.net/qq_43567222/article/details/112982101
今日推荐