//1039. Course List for Student (25)
//waiting
//请记住用scanf和printf, 超时千万要找cin和cout好不好。。。
//accept
#include <iostream>
#include <vector>
#include <algorithm>
using namespace std;
//typedef struct
//{
// bool course[2505];
// int total;
//}Student;
int cal(char c[5])
{
int tmp = 0;
tmp = ((c[0]-'A')*26*26 + (c[1] - 'A')*26 + (c[2] - 'A'))*10 + c[3] - '0';
return tmp;
}
//Student stu[200005];
vector<short> stu[200005];
int main()
{
int N, K;
cin >> N >> K;
int i;
int tmp1, tmp2;
char tmp3[5];
int j;
int curr = 0;
for (i = 0 ;i< K;i++)
{
//cin >> tmp1 >> tmp2;
scanf("%d %d", &tmp1, &tmp2);
for (j = 0;j<tmp2;j++)
{
//cin >> tmp3;
scanf("%s", &tmp3);
int num = cal(tmp3);
//stu[num].course[tmp1] = true;
stu[num].push_back(tmp1);
//stu[num].total++;
}
}
for (i = 0;i<N;i++)
{
//cin >> tmp3;
scanf("%s", &tmp3);
//cout << tmp3 << " ";
printf("%s ", tmp3);
int num = cal(tmp3);
//cout << stu[num].size();
printf("%d", stu[num].size());
if (stu[num].size()>0)
{
sort(stu[num].begin(), stu[num].end());
for (j = 0;j < stu[num].size();j++)
{
//cout << " " << stu[num][j];
printf(" %d", stu[num][j]);
}
}
//cout << endl;
printf("\n");
}
return 0;
}
PAT 1039. Course List for Student (25)
最新推荐文章于 2021-08-09 21:27:46 发布