Question:
How to solve array pair sum divisibility problem using Java

Summary

A class called Solution that has a method called canPair that checks if it is possible to pair the elements of an integer array called nums so that each pair's sum can be divided by a specified integer k.


Solution

class Solution {

    public boolean canPair(int[] nums, int k) {

        // Code here

        if(nums.length%2==1) return false;

        int arr[]= new int[k];

        for(int i=0; i<nums.length; i++){

            arr[nums[i]%k]++;

        }

        int i=1;

        int j=k-1;

        if(arr[0]%2==1) // count is odd

        return false;

        while(i<=j){

            if(arr[i]!=arr[j]) return false;

            i++;

            j--;

        }

        return true;

    }

}


Explanation

  • The Solution class contains the definition for the canPair method. It returns boolean and is declared with a public access modifier.

  • Initial Input Validation: The initial conditional expression determines whether the nums array's length is odd (nums.length % 2 == 1). If so, it returns false right away. 

  • Initialization of the Array: A k-sized integer array called arr is initialized. 


Answered by:> >user_9lalj23vj1c

Credit:> >GeekforGeeks


Suggested blogs:

>Calculating the Nth Fibonacci Number

>How to clone an undirected graph using Java

>Check if strings are rotations of each other or not with Java

>How to Detect cycle in an undirected graph with Java?

>How to check whether all leaves are at the same level using Java

>Compute amount of water that can trapped between the blocks using Java

>How to Print alternate elements of an array?

>How to find Missing And Repeating numbers in an array?

>How to check whether a string is Panagram or not using Java

>How to detect whether the linked list has a loop using Java

>How to determine the number of valid groupings for a string using Java


Submit
0 Answers