pat 1065.單身狗 (25)
「單身狗」:是中文對於單身人士的一種愛稱。本題請你從上萬人的大型派對中找出落單的客人,以便給予特殊關愛。
輸入格式:
輸入第一行給出乙個正整數 n(≤ 50 000),是已知夫妻/伴侶的對數;隨後 n 行,每行給出一對夫妻/伴侶——為方便起見,每人對應乙個 id 號,為 5 位數字(從 00000 到 99999),id 間以空格分隔;之後給出乙個正整數 m(≤ 10 000),為參加派對的總人數;隨後一行給出這 m 位客人的 id,以空格分隔。題目保證無人重婚或腳踩兩條船。
輸出格式:
首先第一行輸出落單客人的總人數;隨後第二行按 id 遞增順序列出落單的客人。id 間用 1 個空格分隔,行的首尾不得有多餘空格。
輸入樣例:
3
11111 22222
33333 44444
55555 66666
755555 44444 10000 88888 22222 11111 23333
輸出樣例:
5
10000 23333 44444 55555 88888
題目分析:讀取夫妻/伴侶使用map儲存方便之後使用。讀取查詢的id時首先使用hash陣列標記出現此人,之後遍歷map表,如果夫妻/伴侶兩個人同時出現在hash陣列中,說明這兩人不是單身狗,隨後標記為false。最後遍歷單身狗hash陣列,將值為true對應的下標即單身狗id儲存到vector中,對vector排序後輸出即可。
ac**:
#include #include #include #include using namespace std;
const int max_n = 100010;
mapmp;
vectorv;
int main()
int m, tmp;
scanf("%d", &m);
for(int i=0; ifor(auto it=mp.begin(); it!=mp.end(); ++it)
}for(int i=0; isort(v.begin(), v.end());
printf("%d\n", v.size());
for(int i=0; ireturn 0;
}
PAT乙級 1065 單身狗 25
原題鏈結 單身狗 是中文對於單身人士的一種愛稱。本題請你從上萬人的大型派對中找出落單的客人,以便給予特殊關愛。輸入格式 輸入第一行給出乙個正整數n 50000 是已知夫妻 伴侶的對數 隨後n行,每行給出一對夫妻 伴侶 為方便起見,每人對應乙個id號,為5位數字 從00000到99999 id間以空格...
pat 乙級 1065 單身狗 25
時間限制 300 ms 記憶體限制 65536 kb 長度限制 8000 b 判題程式 standard 作者 chen,yue 單身狗 是中文對於單身人士的一種愛稱。本題請你從上萬人的大型派對中找出落單的客人,以便給予特殊關愛。輸入格式 輸入第一行給出乙個正整數n 50000 是已知夫妻 伴侶的對...
乙級 PAT 1065 單身狗 25
單身狗 是中文對於單身人士的一種愛稱。本題請你從上萬人的大型派對中找出落單的客人,以便給予特殊關愛。輸入格式 輸入第一行給出乙個正整數n 50000 是已知夫妻 伴侶的對數 隨後n行,每行給出一對夫妻 伴侶 為方便起見,每人對應乙個id號,為5位數字 從00000到99999 id間以空格分隔 之後...