安大OJ 593 分組玩遊戲

2022-08-27 14:12:10 字數 954 閱讀 1917

description

n個小朋友在老師的帶領下玩遊戲。

其中需要分組,老師打算根據大家的衣服顏色分組。

已知衣服顏色用0-9的數字表示。

老師決定每k個人分為一組。每一組的小朋友必須身穿同一種顏色的衣服。

請你告訴老師,是否能成功分組。

input

僅一組資料

第一行兩個整數n,k (1<=n,k<=100)

每二行n個整數a1,a2,a3……an,表示大家的衣服顏色。 (0<=ai<=9)

output

如果能分組為輸出"yes",否則輸出"no";

#include

#include

int main()

int p = 0, m = 0;

for (int j = 0; j < 10; ++j)

if(n % k == 0 && m == p)

printf("yes\n");

else

printf("no\n");

return 0;

}解題思路:這一題,只要我們求出分組成功的情況即可。那麼怎樣能分組成功呢?首先,n % k = 0(n是小朋友的人數,k是每組的人數);其次,存在的每種衣服顏色數 % k = 0。關於第乙個條件很好計算;第二個條件中首先要算出存在的衣服顏色數,這裡用陣列count來標記存在的衣服顏色數;然後就是怎樣表示存在的每種衣服顏色數 % k = 0,這裡可以將它拆成兩個部分,存在的衣服顏色種數p,存在的每種衣服顏色數 % k = 0的個數m,若m = p,則存在的每種衣服顏色數 % k = 0。所以分組成功的條件就是(n % k == 0 && m == p)。

易錯點:若將count初始化為0,count[i] % k (0 <= i <=10)始終為零,如果用count[i] % k == 0來求解m,就會造成m求解錯誤,所以要用count[j] > 0 && count[j] % k == 0來求解m.

安大OJ 589 多公尺諾

description 有乙個n m的網格,用一些2 1的多公尺諾去填充。有以下規則 1 每乙個多公尺諾必須完整覆蓋兩個格仔 2 多公尺諾之間不能重疊 3 多公尺諾不能超過網格邊界 4 擺放多公尺諾時可以旋轉,但是不能斜著擺放 問最多可以用多少個多公尺諾去覆蓋網格。input 乙個整數 t,表示有 ...

安大oj 673 字典樹

每個節點記錄以其為結尾的輸入字串輸入次數,以其為字首的當輸出字串,以其為字首當輸出字串的輸入次數,該節點父節點和子節點,維護這些變數,邊插入邊輸出即可。include include include using namespace std struct t root int idx char c v...

Codeup 593 問題 E 大整數排序

對n個長度最長可達到1000的數進行排序。輸入第一行為乙個整數n,1 n 100 接下來的n行每行有乙個數,數的長度範圍為1 len 1000。每個數都是乙個正數,並且保證不包含字首零。可能有多組測試資料,對於每組資料,將給出的n個數從小到大進行排序,輸出排序後的結果,每個數占一行。4 123123...