Skip to content

Commit 8fe8adf

Browse files
Merge pull request #3448 from Tetsuya3850/patch-2
Create 0740-delete-and-earn.java
2 parents dd67d5e + e2edcfa commit 8fe8adf

File tree

1 file changed

+25
-0
lines changed

1 file changed

+25
-0
lines changed

Diff for: java/0740-delete-and-earn.java

+25
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,25 @@
1+
class Solution {
2+
public int deleteAndEarn(int[] nums) {
3+
Map<Integer, Integer> counter = new HashMap<>();
4+
for (int i = 0; i < nums.length; i++) {
5+
counter.put(nums[i], counter.getOrDefault(nums[i], 0) + 1);
6+
}
7+
List<Integer> numsList = new ArrayList<>(counter.keySet());
8+
Collections.sort(numsList);
9+
10+
int earnOne = 0;
11+
int earnTwo = 0;
12+
for (int i = 0; i < numsList.size(); i++) {
13+
int curEarn = numsList.get(i) * counter.get(numsList.get(i));
14+
if (i > 0 && numsList.get(i) == numsList.get(i - 1) + 1) {
15+
int temp = earnTwo;
16+
earnTwo = Math.max(earnOne + curEarn, earnTwo);
17+
earnOne = temp;
18+
} else {
19+
earnOne = earnTwo;
20+
earnTwo += curEarn;
21+
}
22+
}
23+
return earnTwo;
24+
}
25+
}

0 commit comments

Comments
 (0)