jain12

Cutting a rod by DP

Jun 7th, 2020
81
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 0.50 KB | None | 0 0
  1. #include<iostream>
  2. using namespace std;
  3.  
  4. int MaxValue(int arr[],int size){
  5.   int max_val[size+1];
  6.   max_val[1]=arr[0];
  7.   max_val[0]=0;
  8.   for(int i=1;i<size;i++){
  9.     int sum=0;
  10.     for(int j=i;j>=0;j--){
  11.        int curr_sum=0;
  12.        curr_sum=arr[j]+max_val[i-j];
  13.        if(curr_sum>sum)
  14.         sum=curr_sum;
  15.       }
  16.     max_val[i+1]=sum;
  17.     }
  18.     return max_val[size];
  19.   }
  20.  
  21. int main(){
  22.    int arr[] = {3, 5, 8, 9, 10, 17, 17, 20};
  23.    int size = 8;
  24.    cout<<MaxValue(arr, size);
  25.   }
Add Comment
Please, Sign In to add comment