我是靠谱客的博主 幽默皮带,这篇文章主要介绍1497. 检查数组对是否可以被 k 整除,现在分享给大家,希望可以做个参考。

给你一个整数数组 arr 和一个整数 k ,其中数组长度是偶数,值为 n 。

现在需要把数组恰好分成 n / 2 对,以使每对数字的和都能够被 k 整除。

如果存在这样的分法,请返回 True ;否则,返回 False 。

数学题:

(A+B)%k==A%k+B%k

开一个长度为K的空间mod,将arr中的每一个数做mod[one%k]++,mod[0]就是可以整除k的个数,必须是偶数,其他的任意需满足mod[i]==mod[k-i]

class Solution:
    def canArrange(self, arr: List[int], k: int) -> bool:
        mod=[0]*k
        for a in arr:mod[a%k]+=1
        for i in range(1, k // 2+1):
            if mod[i]!=mod[k-i]:return False
        return mod[0]%2==0

 

最后

以上就是幽默皮带最近收集整理的关于1497. 检查数组对是否可以被 k 整除的全部内容,更多相关1497.内容请搜索靠谱客的其他文章。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(163)

评论列表共有 0 条评论

立即
投稿
返回
顶部