Skip to content

Commit 983360a

Browse files
authored
Merge pull request #1 from 2400031598/2400031598-patch-1
Create maxAlternatingSum.java
2 parents db3f011 + 149df8b commit 983360a

1 file changed

Lines changed: 18 additions & 0 deletions

File tree

maxAlternatingSum.java

Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,18 @@
1+
import java.util.*;
2+
3+
class Solution {
4+
public long maxAlternatingSum(int[] nums) {
5+
int n = nums.length;
6+
int posCounts = (n + 1) / 2;
7+
Integer[] absVals = Arrays.stream(nums).map(Math::abs).boxed().toArray(Integer[]::new);
8+
Arrays.sort(absVals, (a, b) -> Integer.compare(b, a));
9+
10+
long sumPos = 0, sumNeg = 0;
11+
for (int i = 0; i < n; i++) {
12+
long sq = 1L * absVals[i] * absVals[i];
13+
if (i < posCounts) sumPos += sq;
14+
else sumNeg += sq;
15+
}
16+
return sumPos - sumNeg;
17+
}
18+
}

0 commit comments

Comments
 (0)