假設全校有最多40000名學生和最多2500門課程。現給出每個學生的選課清單,要求輸出每門課的選課學生名單。
輸入的第一行是兩個正整數:n(≤40000),為全校學生總數;k(≤2500),為總課程數。此後n行,每行包括乙個學生姓名(3個大寫英文本母+1位數字)、乙個正整數c(≤20)代表該生所選的課程門數、隨後是c個課程編號。簡單起見,課程從1到k編號。
順序輸出課程1到k的選課學生名單。格式為:對每一門課,首先在一行中輸出課程編號和選課學生總數(之間用空格分隔),之後在第二行按字典序輸出學生名單,每個學生名字佔一行。
10 5
zoe1 2 4 5
ann0 3 5 2 1
bob5 5 3 4 2 1 5
joe4 1 2
jay9 4 1 2 5 4
fra8 3 4 2 5
don2 2 4 5
amy7 1 5
kat3 3 5 4 2
lor6 4 2 4 1 5
1 4
ann0
bob5
jay9
lor6
2 7ann0
bob5
fra8
jay9
joe4
kat3
lor6
3 1bob5
4 7bob5
don2
fra8
jay9
kat3
lor6
zoe1
5 9amy7
ann0
bob5
don2
fra8
jay9
kat3
lor6
zoe1
#include#include#include#includeusing namespace std;
struct nodecourse[2510][40010];
int num[2510]; //num陣列儲存選某一節課人數
bool cmp(node a,node b)
int main()
} for(i = 1; i <= k; i++)
for(i = 1; i <= k; i++)
} return 0;
}
列印選課學生名單
假設全校有最多40000名學生和最多2500門課程。現給出每個學生的選課清單,要求輸出每門課的選課學生名單。輸入格式 輸入的第一行是兩個正整數 n 40000 為全校學生總數 k 2500 為總課程數。此後n行,每行包括乙個學生姓名 3個大寫英文本母 1位數字 乙個正整數c 20 代表該生所選的課程...
7 47 列印選課學生名單 (25 分)
7 47 列印選課學生名單 25 分 假設全校有最多40000名學生和最多2500門課程。現給出每個學生的選課清單,要求輸出每門課的選課學生名單。輸入的第一行是兩個正整數 n 40000 為全校學生總數 k 2500 為總課程數。此後n行,每行包括乙個學生姓名 3個大寫英文本母 1位數字 乙個正整數...
7 4 列印選課學生名單 25 分
假設全校有最多40000名學生和最多2500門課程。現給出每個學生的選課清單,要求輸出每門課的選課學生名單。輸入的第一行是兩個正整數 n 40000 為全校學生總數 k 2500 為總課程數。此後n行,每行包括乙個學生姓名 3個大寫英文本母 1位數字 乙個正整數c 20 代表該生所選的課程門數 隨後...