zoukankan      html  css  js  c++  java
  • 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
    
  • 相关阅读:
    SCCM2012分发脚本
    MPIO配置
    创建快捷方式,修改注册表
    常用口语 一
    3463工厂频道预置方法
    xargs 主要用于不支持管道的shell命令*****
    RDA DEBUG
    linux shell 实例1
    MSD3458开发资料
    MSD6A628开发资料与技术支持
  • 原文地址:https://www.cnblogs.com/bernieloveslife/p/9742235.html
Copyright © 2011-2022 走看看