Get the Maximum Score LeetCode solution in C++

1
class Solution {
2
public:
3
int maxSum(vector<int> &nums1, vector<int> &nums2) {
4
int mod = 1e9 + 7;
5
long long int ans = 0, sum1 = 0, sum2 = 0;
6
int i = 0, j = 0;
7
while (i < nums1.size() and j < nums2.size()) {
8
if (nums1[i] < nums2[j])
9
sum1 += nums1[i++];
10
else if (nums1[i] > nums2[j])
11
sum2 += nums2[j++];
12
else {
13
ans += nums1[i] + max(sum1, sum2);
14
i++;
15
j++;
16
sum1 = 0;
17
sum2 = 0;
18
}
19
}
20
while (i < nums1.size()) sum1 += nums1[i++];
21
while (j < nums2.size()) sum2 += nums2[j++];
22
ans += max(sum1, sum2);
23
ans = ans % mod;
24
return (int)ans;
25
}
26
};

0

WPM •0 •0

100%

ACC •0 •0

0s

TIME •0