914. X of a Kind in a Deck of Cards
Posted bernieloveslife
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了914. X of a Kind in a Deck of Cards相关的知识,希望对你有一定的参考价值。
In a deck of cards, each card has an integer written on it.
Return true if and only if you can choose X >= 2 such that it is possible to split the entire deck into 1 or more groups of cards, where:
Each group has exactly X cards.
All the cards in each group have the same integer.
Example 1:
Input: [1,2,3,4,4,3,2,1]
Output: true
Explanation: Possible partition [1,1],[2,2],[3,3],[4,4]
Example 2:
Input: [1,1,1,2,2,2,3,3]
Output: false
Explanation: No possible partition.
Example 3:
Input: [1]
Output: false
Explanation: No possible partition.
Example 4:
Input: [1,1]
Output: true
Explanation: Possible partition [1,1]
Example 5:
Input: [1,1,2,2,2,2]
Output: true
Explanation: Possible partition [1,1],[2,2],[2,2]
Note:
1 <= deck.length <= 10000
0 <= deck[i] < 10000
class Solution:
def hasGroupsSizeX(self, deck):
"""
:type deck: List[int]
:rtype: bool
"""
deck.sort()
x = 2
while x<=len(deck):
if len(deck)%x!=0:
x += 1
continue
group = int(len(deck)/x)
flag = True
for i in range(group):
if deck[i * x]!=deck[x*(i+1)-1]:
flag = False
break
if flag:
return True
x += 1
return False
以上是关于914. X of a Kind in a Deck of Cards的主要内容,如果未能解决你的问题,请参考以下文章
Leetcode 914. X of a Kind in a Deck of Cards
codeforces 914E Palindromes in a Tree(点分治)
hdu3306:Another kind of Fibonacci