fork download
  1. import java.util.*;
  2. import java.lang.*;
  3. import java.io.*;
  4.  
  5. class Ideone
  6. {
  7. public static void main (String[] args) throws java.lang.Exception
  8. {
  9. int[] nums = {51, 71, 17, 42};
  10. int maxSum = -1;
  11. HashMap<Integer, Integer> hm = new HashMap<>();
  12.  
  13. for(int i = 0; i < nums.length; i++) {
  14. int num = nums[i];
  15. int digitSum = 0;
  16. int temp = num;
  17.  
  18. // Calculate digit sum
  19. while(temp > 0) {
  20. digitSum += temp % 10;
  21. temp /= 10;
  22. }
  23.  
  24. if(hm.containsKey(digitSum)) {
  25. // Found a pair with same digit sum
  26. int existingNum = hm.get(digitSum);
  27. int currentSum = existingNum + num;
  28. maxSum = Math.max(maxSum, currentSum);
  29.  
  30. // Keep the larger number for future pairs
  31. if(num > existingNum) {
  32. hm.put(digitSum, num);
  33. }
  34. } else {
  35. hm.put(digitSum, num);
  36. }
  37. }
  38.  
  39. System.out.println("Maximum sum: " + maxSum);
  40. }
  41. }
Success #stdin #stdout 0.1s 55676KB
stdin
Standard input is empty
stdout
Maximum sum: 93