我是靠谱客的博主 幽默皮带,最近开发中收集的这篇文章主要介绍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. 检查数组对是否可以被 k 整除所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

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

评论列表共有 0 条评论

立即
投稿
返回
顶部