classSolution{public:intdeleteAndEarn(vector<int>&nums){// Reduce to 198. House Robbervector<int>bucket(10001);for(constintnum:nums)bucket[num]+=num;intprev1=0;intprev2=0;for(constintnum:bucket){constintdp=max(prev1,prev2+num);prev2=prev1;prev1=dp;}returnprev1;}};
classSolution{publicintdeleteAndEarn(int[]nums){// Reduce to 198. House Robberint[]bucket=newint[10001];for(finalintnum:nums)bucket[num]+=num;intprev1=0;intprev2=0;for(finalintnum:bucket){finalintdp=Math.max(prev1,prev2+num);prev2=prev1;prev1=dp;}returnprev1;}}