欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

LeetCode 1497. 检查数组对是否可以被 k 整除

程序员文章站 2022-07-15 12:48:09
...

LeetCode 1497. 检查数组对是否可以被 k 整除

 

public static boolean canArrange(int[] arr, int k) {
        int[] h = new int[k];
        for(int num : arr){
            int mod = num%k;
            if(mod < 0)mod+=k;//将负余数 变为正余数
            h[mod]++;//对应位置+1
        }
        if((h[0]&1) == 1)return false;//若余数为零的个数是奇数个  返回false
        for (int i = 1; i <= k/2; i++) {//遍历 检查第i和第k-i个数 是否能一样 (是否能凑成%k=0)
            if(h[i] != h[k-i]){
                return  false;
            }
        }
        return true;
    }