概述
给你一个整数数组 arr 和一个整数 k ,其中数组长度是偶数,值为 n 。现在需要把数组恰好分成 n / 2 对,以使每对数字的和都能够被 k 整除。如果存在这样的分法,请返回 True ;否则,返回 False 。
from typing import *
from collections import defaultdict
class Solution:
def canArrange(self, arr: List[int], k: int) -> bool:
"""
遇见整除问题,首先考虑余数
每一对余数对应的值相等
:param arr:
:param k:
:return:
"""
dic1 = defaultdict(int)
for val in arr:
dic1[val % k] += 1
for i in range(1, k // 2 + 1):
if i == k - i and dic1[i] % 2 != 0:
return False
if dic1[i] != dic1[k - i]:
return False
return True
最后
以上就是温暖航空为你收集整理的LeetCode 1497 检查数组对是否可以被k整除的全部内容,希望文章能够帮你解决LeetCode 1497 检查数组对是否可以被k整除所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复