• 【leetcode】1497. Check If Array Pairs Are Divisible by k


    题目如下:

    Given an array of integers arr of even length n and an integer k.

    We want to divide the array into exactly n / 2 pairs such that the sum of each pair is divisible by k.

    Return True If you can find a way to do that or False otherwise. 

    Example 1:

    Input: arr = [1,2,3,4,5,10,6,7,8,9], k = 5
    Output: true
    Explanation: Pairs are (1,9),(2,8),(3,7),(4,6) and (5,10).
    

    Example 2:

    Input: arr = [1,2,3,4,5,6], k = 7
    Output: true
    Explanation: Pairs are (1,6),(2,5) and(3,4).
    

    Example 3:

    Input: arr = [1,2,3,4,5,6], k = 10
    Output: false
    Explanation: You can try all possible pairs to see that there is no way to divide arr into 3 pairs each with sum divisible by 10.
    

    Example 4:

    Input: arr = [-10,10], k = 2
    Output: true
    

    Example 5:

    Input: arr = [-1,1,-2,2,-3,3,-4,4], k = 3
    Output: true

    Constraints:

    • arr.length == n
    • 1 <= n <= 10^5
    • n is even.
    • -10^9 <= arr[i] <= 10^9
    • 1 <= k <= 10^5

    解题思路:统计arr中每个元素除k后的余数出现的次数,接下来只要判断余数i出现的次数是否和余数k-i出现的次数相等即可。对于余数为0的情况,只要满足出现的次数为偶数即可。

    代码如下:

    class Solution(object):
        def canArrange(self, arr, k):
            """
            :type arr: List[int]
            :type k: int
            :rtype: bool
            """
            dic = {}
            for i in arr:
                remainder = i % k
                dic[remainder] =  dic.setdefault(remainder,0) + 1
            for key,val in dic.iteritems():
                if val == 0:continue
                elif key == 0 and val % 2 != 0:
                    return False
                elif key == 0 and val % 2 == 0:
                    continue
                elif k - key not in dic or dic[k-key] != val:
                    return False
            return True
  • 相关阅读:
    WSGI详解
    WSGI、flup、fastcgi、web.py的关系
    全面解读python web 程序的9种部署方式
    python对web服务器做压力测试并做出图形直观显示
    6个最佳的开源Python应用服务器
    用 Python 脚本实现对 Linux 服务器的监控
    浅谈图片服务器的架构演进
    Python中使用Flask、MongoDB搭建简易图片服务器
    流行python服务器框架
    搜索引擎技术之概要预览
  • 原文地址:https://www.cnblogs.com/seyjs/p/13217870.html
Copyright © 2020-2023  润新知