首页 > 编程语言 > 详细

1854. 数组划分III

时间:2020-05-02 21:20:44      阅读:101      评论:0      收藏:0      [点我收藏+]

1854. 数组划分III

中文English

给你一个整数数组和一个整数K,请你判断数组是否可以划分为若干大小为k序列,并满足以下条件:

  • 数组中的每一个数恰恰出现在一个序列中
  • 一个序列中的数都是互不相同的
  • 数组中相同元素是被划分到不同序列中的

如何可以划分,返回True,否则返回False。

数组长度小于等于10^5。

样例

例1:

input: array=[1,2,3,4], k = 2

output:true

例2:

input: array=[1,2,2,3], k = 3

output:false

 
 
输入测试数据 (每行一个参数)如何理解测试数据?
class Solution:
    """
    @param array: the input array
    @param k: the sequence length
    @return: if it is possible, return true, otherwise false
    """
    ‘‘‘
    大致思路:
    1.得到出现最大次数的值,如果最大次数>k的话,则返回False,以及看array是否可以平均分配k长度,如果不可以,返回False。否则True
    ‘‘‘
    def partitionArratIII(self, array, k):
        dic = {}
        for i in array:
            dic[i] = dic.get(i,0)+1
        
        m = max([v for v in dic.values()])
        if m > len(array)//k:
            return False
        return True

 

1854. 数组划分III

原文:https://www.cnblogs.com/yunxintryyoubest/p/12819504.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!