import java.util.*;
import java.lang.*;
import java.io.*;
class Ideone
{
{
int[] nums = {51, 71, 17, 42};
int maxSum = -1;
HashMap
<Integer, Integer
> hm
= new HashMap
<>();
for(int i = 0; i < nums.length; i++) {
int num = nums[i];
int digitSum = 0;
int temp = num;
// Calculate digit sum
while(temp > 0) {
digitSum += temp % 10;
temp /= 10;
}
if(hm.containsKey(digitSum)) {
// Found a pair with same digit sum
int existingNum = hm.get(digitSum);
int currentSum = existingNum + num;
maxSum
= Math.
max(maxSum, currentSum
);
// Keep the larger number for future pairs
if(num > existingNum) {
hm.put(digitSum, num);
}
} else {
hm.put(digitSum, num);
}
}
System.
out.
println("Maximum sum: " + maxSum
); }
}
aW1wb3J0IGphdmEudXRpbC4qOwppbXBvcnQgamF2YS5sYW5nLio7CmltcG9ydCBqYXZhLmlvLio7CgpjbGFzcyBJZGVvbmUKewogICAgcHVibGljIHN0YXRpYyB2b2lkIG1haW4gKFN0cmluZ1tdIGFyZ3MpIHRocm93cyBqYXZhLmxhbmcuRXhjZXB0aW9uCiAgICB7CiAgICAgICAgaW50W10gbnVtcyA9IHs1MSwgNzEsIDE3LCA0Mn07CiAgICAgICAgaW50IG1heFN1bSA9IC0xOwogICAgICAgIEhhc2hNYXA8SW50ZWdlciwgSW50ZWdlcj4gaG0gPSBuZXcgSGFzaE1hcDw+KCk7CiAgICAgICAgCiAgICAgICAgZm9yKGludCBpID0gMDsgaSA8IG51bXMubGVuZ3RoOyBpKyspIHsKICAgICAgICAgICAgaW50IG51bSA9IG51bXNbaV07CiAgICAgICAgICAgIGludCBkaWdpdFN1bSA9IDA7CiAgICAgICAgICAgIGludCB0ZW1wID0gbnVtOwogICAgICAgICAgICAKICAgICAgICAgICAgLy8gQ2FsY3VsYXRlIGRpZ2l0IHN1bQogICAgICAgICAgICB3aGlsZSh0ZW1wID4gMCkgewogICAgICAgICAgICAgICAgZGlnaXRTdW0gKz0gdGVtcCAlIDEwOwogICAgICAgICAgICAgICAgdGVtcCAvPSAxMDsKICAgICAgICAgICAgfQogICAgICAgICAgICAKICAgICAgICAgICAgaWYoaG0uY29udGFpbnNLZXkoZGlnaXRTdW0pKSB7CiAgICAgICAgICAgICAgICAvLyBGb3VuZCBhIHBhaXIgd2l0aCBzYW1lIGRpZ2l0IHN1bQogICAgICAgICAgICAgICAgaW50IGV4aXN0aW5nTnVtID0gaG0uZ2V0KGRpZ2l0U3VtKTsKICAgICAgICAgICAgICAgIGludCBjdXJyZW50U3VtID0gZXhpc3RpbmdOdW0gKyBudW07CiAgICAgICAgICAgICAgICBtYXhTdW0gPSBNYXRoLm1heChtYXhTdW0sIGN1cnJlbnRTdW0pOwogICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAvLyBLZWVwIHRoZSBsYXJnZXIgbnVtYmVyIGZvciBmdXR1cmUgcGFpcnMKICAgICAgICAgICAgICAgIGlmKG51bSA+IGV4aXN0aW5nTnVtKSB7CiAgICAgICAgICAgICAgICAgICAgaG0ucHV0KGRpZ2l0U3VtLCBudW0pOwogICAgICAgICAgICAgICAgfQogICAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICAgICAgaG0ucHV0KGRpZ2l0U3VtLCBudW0pOwogICAgICAgICAgICB9CiAgICAgICAgfQogICAgICAgIAogICAgICAgIFN5c3RlbS5vdXQucHJpbnRsbigiTWF4aW11bSBzdW06ICIgKyBtYXhTdW0pOwogICAgfQp9