From 26b0c8c863780cf06c994ecf4cacacc19e8d2b01 Mon Sep 17 00:00:00 2001 From: Cool <747682928@qq.com> Date: Sat, 7 Dec 2024 21:42:21 +0800 Subject: [PATCH] =?UTF-8?q?2024/12/7=20=E7=81=B5=E8=8C=B6=E9=A2=98?= =?UTF-8?q?=E5=8D=95=20dp?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../com/cool/ling_cha_mount/dp/Num740.java | 21 +++++++++++++++++++ 1 file changed, 21 insertions(+) create mode 100644 src/main/java/com/cool/ling_cha_mount/dp/Num740.java diff --git a/src/main/java/com/cool/ling_cha_mount/dp/Num740.java b/src/main/java/com/cool/ling_cha_mount/dp/Num740.java new file mode 100644 index 0000000..0b86f51 --- /dev/null +++ b/src/main/java/com/cool/ling_cha_mount/dp/Num740.java @@ -0,0 +1,21 @@ +package com.cool.ling_cha_mount.dp; + +public class Num740 { + public int deleteAndEarn(int[] nums) { + int max = Integer.MIN_VALUE; + for (int num : nums) { + max = Math.max(max, num); + } + int[] dp = new int[max + 1]; + for (int num : nums) { + dp[num] += num; + } + int prevMax = 0, currMax = dp[0]; + for (int i = 1; i < dp.length; i++) { + int temp = currMax; + currMax = Math.max(currMax, prevMax + dp[i]); + prevMax = temp; + } + return currMax; + } +}