Write Java code to find K-complementary pairs in a given array of integers. Given Array A, pair (i, j) is K- complementary if K = A[i] + A[j];
Anoniem
public class ComplimentryPair { public int noOfComplimentryPairUsingEight(int[] arr, int k) { Map map = new HashMap(); for (int i = 0; i map.getOrDefault(element, 0)).sum(); } public int noOfComplimentaryPair(int[] arr, int k) { Map map = new HashMap(); for (int i = 0; i < arr.length; i++) { int complValue = k - arr[i]; int tempValue = map.containsKey(complValue) ? map.get(complValue) : 0; map.put(complValue, tempValue + 1); } int counter = 0; for (int i = 0; i < arr.length; i++) { counter += map.containsKey(arr[i]) ? map.get(arr[i]) : 0; } return counter; } }