1065 單身狗 25 分

2022-06-22 05:42:16 字數 1607 閱讀 9604

「單身狗」是中文對於單身人士的一種愛稱。本題請你從上萬人的大型派對中找出落單的客人,以便給予特殊關愛。

輸入第一行給出乙個正整數 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

1 #include 2 #include 3 #include 4 #include 5 #include 6 #include 7 #include 8 #include 

9 #include 10 #include 11 #include 12 #include 13

using

namespace

std;

1415

struct

nodecouple[50005

];18

19int iscouple[100005

];20

21int

main()

2233 scanf("

%d", &m);

34for(int i = 0; i < m; i++) //

輸入到場來賓

3538

int cnt = 0;39

for(int i = 0; i < m; i++)

4052}53

if(j == m) //

伴侶沒來

54 single[cnt++] =guest[i];55}

56else

if(iscouple[guest[i]] == -1 && guest[i] != -1) //

本就是單身貴族

5760

}61 sort(single, single + cnt); //

將單身貴族的編號從小到大排序

62 printf("

%d\n

", cnt);

63for(int i = 0; i < cnt; i++)

6469

return0;

70 }

思路一下就有了,測試程式時總是有個-00001,經過除錯發現原本的**在本就是單身貴族那裡直接else了,也就是沒有考慮到iscouple【-1】也有不等於-1的情況,但這裡面的-1是嘉賓被排除在落單戶名單外的。考慮進去後就全過了。

除錯熟練程度不夠,反應太慢。改bug能力有待提高。

1065 單身狗 25 分

題意描述 單身狗 是中文對於單身人士的一種愛稱。本題請你從上萬人的大型派對中找出落單的客人,以便給予特殊關愛。輸入格式 輸入第一行給出乙個正整數 n 50 000 是已知夫妻 伴侶的對數 隨後 n 行,每行給出一對夫妻 伴侶 為方便起見,每人對應乙個 id 號,為 5 位數字 從 00000 到 9...

1065 單身狗 25 分

單身狗 是中文對於單身人士的一種愛稱。本題請你從上萬人的大型派對中找出落單的客人,以便給予特殊關愛。輸入第一行給出乙個正整數 n 50 000 是已知夫妻 伴侶的對數 隨後 n 行,每行給出一對夫妻 伴侶 為方便起見,每人對應乙個 id 號,為 5 位數字 從 00000 到 99999 id 間以...

1065 單身狗 25 分

單身狗 是中文對於單身人士的一種愛稱。本題請你從上萬人的大型派對中找出落單的客人,以便給予特殊關愛。輸入第一行給出乙個正整數 n 50 000 是已知夫妻 伴侶的對數 隨後 n 行,每行給出一對夫妻 伴侶 為方便起見,每人對應乙個 id 號,為 5 位數字 從 00000 到 99999 id 間以...