热门
最新
红包
立Flag
投票
同城
我的
发布
力扣740——删除并获得点数(其实仔细感受也就是打家劫舍了)
https://leetcode.cn/problems/delete-and-earn/description/
int hush[20002];//定义一个哈希表
int dp[20002];//定义状态数组
class Solution {
public:
int max(int a,int b){
return a>b?a:b;
}
int deleteAndEarn(vector<int>& nums) {
int len=nums.size();
memset(hush,0,sizeof(hush));//初始化哈希表
for(int i=0;i<len;i++){
hush[nums[i]]+=nums[i];
}//映射!!!
dp[0]=0;
dp[1]=hush[1];//定义初始状态
for(int i=2;i<=20000;i++){
dp[i]=max(dp[i-1],dp[i-2]+hush[i]);//状态转移
}
return dp[20000];//返回结果
}
};
大学生的日常
CSDN App 扫码分享
1
2
打赏
- 复制链接
- 举报
下一条:
心无旁骛,这一年