Post

2473 Max Sum Of A Pair With Equal Sum Of Digits

2473 Max Sum Of A Pair With Equal Sum Of Digits

Max Sum of a Pair With Equal Sum of Digits image

You are given a 0-indexed array nums consisting of positive integers. You can choose two indices i and j, such that i != j, and the sum of digits of the number nums[i] is equal to that of nums[j].

Return the maximum value of *nums[i] + nums[j] that you can obtain over all possible indices i and j that satisfy the conditions.*

 

Example 1:

1
2
3
4
5
6
7
8
**Input:** nums = [18,43,36,13,7]
**Output:** 54
**Explanation:** The pairs (i, j) that satisfy the conditions are:
- (0, 2), both numbers have a sum of digits equal to 9, and their sum is 18 + 36 = 54.
- (1, 4), both numbers have a sum of digits equal to 7, and their sum is 43 + 7 = 50.
So the maximum sum that we can obtain is 54.

Example 2:

1
2
3
4
5
**Input:** nums = [10,12,19,14]
**Output:** -1
**Explanation:** There are no two numbers that satisfy the conditions, so we return -1.

 

Constraints:

1
2
1 <= nums.length <= 105
1 <= nums[i] <= 109
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48



func maximumSum(nums []int) int {
    mp := make(map[int][]int)

    for i , k := range nums {
        n := 0
        for(k > 0) {
            n += (k % 10)
            k = k / 10
        }
        _, ok := mp[n]
        if ok {
            mp[n] = append(mp[n], i)
        } else {
            mp[n] = make([]int, 0)
            mp[n] = append(mp[n], i)
        }
    }
    //fmt.Println(mp)

    res := -1
    for _,v := range mp {
        if len(v) >= 2 {
            m1 := 0

            m2 := 0

            for _, c := range v {
                if nums[c] > m1 {
                    m2 = max(m2, m1)
                    m1 = nums[c]
                } else {
                    m2 = max(nums[c], m2)
                }

            }

            res = max(res, m1 + m2)
        }
    }
    return res
}



This post is licensed under CC BY 4.0 by the author.