int f(int ind,vector<int>& nums,vector<int>& dp) { int one,two=INT_MAX; if(ind==0)return 0; if(dp[ind]!=-1) return dp[ind]; one = f(ind-1,nums,dp)+abs(nums[ind]-nums[ind-1]); if(ind>1) two = f(ind-2,nums,dp)+abs(nums[ind]-nums[ind-2]); return dp[ind]=min(one,two); } int minimumEnergy(vector<int>& height, int n) { // Code here vector<int> dp(n,-1); return f(n-1,height,dp); }
Preview:
downloadDownload PNG
downloadDownload JPEG
downloadDownload SVG
Tip: You can change the style, width & colours of the snippet with the inspect tool before clicking Download!
Click to optimize width for Twitter