From 7442203ce2269cb9ab76f21c90e71c6927a38832 Mon Sep 17 00:00:00 2001 From: amitagoel <73668666+amitagoel@users.noreply.github.com> Date: Sun, 31 Oct 2021 22:04:18 +0530 Subject: [PATCH] Create RodCutting.cpp --- Algorithm/RodCutting.cpp | 31 +++++++++++++++++++++++++++++++ 1 file changed, 31 insertions(+) create mode 100644 Algorithm/RodCutting.cpp diff --git a/Algorithm/RodCutting.cpp b/Algorithm/RodCutting.cpp new file mode 100644 index 0000000..a6d8a3a --- /dev/null +++ b/Algorithm/RodCutting.cpp @@ -0,0 +1,31 @@ +#include +#include +#include +using namespace std; + +int max(int a, int b) { return (a > b)? a : b;} +int cutRod(int price[], int n) +{ +int val[n+1]; +val[0] = 0; +int i, j; + +for (i = 1; i<=n; i++) +{ + int max_val = INT_MIN; + for (j = 0; j < i; j++) + max_val = max(max_val, price[j] + val[i-j-1]); + val[i] = max_val; +} + +return val[n]; +} + +int main() +{ + int arr[] = {1, 5, 8, 9, 10, 17, 17, 20}; + int size = sizeof(arr)/sizeof(arr[0]); + cout <<"Maximum Obtainable Value is "<