卡牌分組 C語言

2021-10-04 12:12:17 字數 725 閱讀 9449

給定一副牌,每張牌上都寫著乙個整數。

每組都有 x 張牌。

組內所有的牌上都寫著相同的整數。

僅當你可選的 x >=

2 時返回 true。

示例 1:

輸入:[1,

2,3,

4,4,

3,2,

1]輸出:true

解釋:可行的分組是 [1,

1],[2,

2],[3,

3],[4,

4]示例 2:

輸入:[1,

1,1,

2,2,

2,3,

3]輸出:false

解釋:沒有滿足要求的分組。

暴力法:

對於題意,別管怎麼分,他裡面分組最大不能超過出現的重複數字最少的數字,他總共就這幾個數字,每組裡的數字必須小於等於他的個數

那我們就乙個乙個的試試唄!從下限2到上限

暴力+列舉優化法:

這個列舉過程中 可以排除掉一些東西,例如 每組兩個都不行,每組四個那就更不行,每組8個也不行

同樣 每組三個不行,6個也不行。。。。這樣吧其中的含有其它因子的數字都排除 任務量就小多了

也就是只留下素數

尋找公共約數():

想一想 要分組,那每個組中的個數都必須被每個數的個數給整除吧!不然分不了組 所以要找他們的公約數 那就找個特殊的吧 找個最大的 畢竟有輾轉相除法做靠山

卡牌分組 leetcode

給定一副牌,每張牌上都寫著乙個整數。僅當你可選的x 2時返回true。示例 1 輸入 1,2,3,4,4,3,2,1 輸出 true解釋 可行的分組是 1,1 2,2 3,3 4,4 示例 2 輸入 1,1,1,2,2,2,3,3 輸出 false解釋 沒有滿足要求的分組。示例 3 輸入 1 輸出 ...

914 卡牌分組

給定一副牌,每張牌上都寫著乙個整數。每組都有 x 張牌。組內所有的牌上都寫著相同的整數。僅當你可選的 x 2 時返回 true。示例 1 輸入 1,2,3,4,4,3,2,1 輸出 true 解釋 可行的分組是 1,1 2,2 3,3 4,4 示例 2 輸入 1,1,1,2,2,2,3,3 輸出 f...

JS 卡牌分組 陣列 數學

給定一副牌,你需要將整副牌分成 1 組或多組。要求 每組牌數量相等 組內每張牌數字相等,僅當你可選的 x 2 時返回 true。輸入 1,2,3,4,4,3,2,1 輸出 true 解釋 可行的分組是 1,1 2,2 3,3 4,4 輸入 1,1,2,2,2,2 輸出 true 解釋 可行的分組是 ...