#include <cstdio>
#include <cstdlib>
#include <iostream>
#include <algorithm>
#include <cmath>
#include <string>
#include <cstring>
#include <vector>
#include <queue>
#include <map>
#include <set>
using namespace std;
char stu[40005][5];
vector<int> v[3000];
bool cmp(int a,int b)
{
return strcmp(stu[a],stu[b])<0;
}
int main()
{
// freopen("in.txt","r" ,stdin);
int N,K;
scanf("%d %d",&N,&K);
for(int i=0;i<N;i++)
{
scanf("%s",stu[i]);
int t;
scanf("%d",&t);
for(int j=0;j<t;j++)
{
int id;
scanf("%d",&id);
v[id].push_back(i);
}
}
for(int i=1;i<=K;i++)
{
cout<<i<<' '<<v[i].size()<<endl;
sort(v[i].begin(),v[i].end(),cmp);
for(int j=0;j<v[i].size();j++)
{
printf("%s\n",stu[v[i][j]]);
}
}
return 0;
}
1047. Student List for Course (25)
最新推荐文章于 2022-02-16 14:52:49 发布
本文展示了一个使用C++进行编程竞赛的例子,涉及字符串处理、排序算法及数据结构的应用。通过对学生信息的输入、存储与排序,实现了有效的信息管理。

1616

被折叠的 条评论
为什么被折叠?



