題目連結:
題目大意:
輸入第一列給定一正整數 T(1 ≦ T ≦ 10),代表有 T 筆測試資料,每筆佔兩列。測資第一列給定一正整數 n(1 ≦ n ≦ 100,且 n 為偶數),代表有 n 個數字要配對。接著一列給定 n 個整數(絕對值皆小於 50001),代表這 n 個數之值。試問這 n 個數字可否可以兩兩配在一起,使每對的數字彼此不相同?
範例輸入:
範例輸入 #1
1
6
2 2 3 3 3 4
範例輸入 #2
2
4
2 2 2 4
6
2 2 2 4 4 4
範例輸入 #3
3
2
-101 -101
8
-1 -1 -1 -4 5 5 7 6
10
-10 9 -8 7 -6 5 -4 3 2 1
範例輸出:
範例輸出 #1
Yes
範例輸出 #2
No
Yes
範例輸出 #3
No
Yes
Yes
解題思維:
我們可以看到當有一「種」數字出現超過 n ÷ 2 時,我們勢必出現一數對而其中兩個數字相同。例如 1 1 2 2 2 2 必定會出現 (2, 2) 這個數對,而 1 1 1 2 2 2 則可以避免掉 (2, 2)。也就是說我們要找的是「絕對多數」,參見
這題的作法。
此次分享到此為止,如有任何更加簡潔的想法或是有說明不清楚之地方,也煩請各位大大撥冗討論。