#include#include#include#includeusing namespace std;
char name[5];
int f(char*p)
unordered_multimapke;
int main());}
}//for
while(n--)
return 0;
}
用雜湊表,但肯定不需要自己寫乙個雜湊表,自己再怎麼寫也不可能比stl的寫的更好,如果超時或超記憶體,肯定是有些地方的優化做的不好。比如名字明顯可以轉化為乙個數字,那麼用string倒騰就會超時而且沒必要。另外課程標號並不是按順序來的,否則給這個標號就沒用了,pat的出題人很聰明不會給乙個沒用的數字的 PAT DS 8 04 列印學生選課清單
這道題乍一看應該hash一下就可以了,沒想到做著做著發現,要麼時間不夠,要麼空間不夠 1.先確定用40111這個素數做hash表,儲存所有學生選課資訊。2.選了哪些課的儲存需要細細想想。題目沒給選課量的上限,先前根據實際情況考慮不會超過50門,遺憾的出現段錯誤。於是改用鍊錶。3.題目沒說選課資訊會按...
5 49 列印學生選課清單 25分
假設全校有最多40000名學生和最多2500門課程。現給出每門課的選課學生名單,要求輸出每個前來查詢的學生的選課清單。輸入的第一行是兩個正整數 n le 40000 為前來查詢課表的學生總數 k le 2500 為總課程數。此後順序給出課程1到k的選課學生名單。格式為 對每一門課,首先在一行中輸出課...
7 14 列印學生選課清單 25 分
假設全校有最多40000名學生和最多2500門課程。現給出每門課的選課學生名單,要求輸出每個前來查詢的學生的選課清單。輸入的第一行是兩個正整數 n 40000 為前來查詢課表的學生總數 k 2500 為總課程數。此後順序給出課程1到k的選課學生名單。格式為 對每一門課,首先在一行中輸出課程編號 簡單...