{"id":1448,"date":"2020-06-11T04:17:47","date_gmt":"2020-06-11T04:17:47","guid":{"rendered":"https:\/\/blog.prepbytes.com\/?p=1448"},"modified":"2022-03-30T11:32:55","modified_gmt":"2022-03-30T11:32:55","slug":"maximum-value","status":"publish","type":"post","link":"https:\/\/prepbytes.com\/blog\/maximum-value\/","title":{"rendered":"MAXIMUM VALUE"},"content":{"rendered":"<p><img decoding=\"async\" src=\"https:\/\/prepbytes-misc-images.s3.ap-south-1.amazonaws.com\/assets\/1645174195999-Article_397.png\" alt=\"\" \/><\/p>\n<h3>CONCEPTS USED:<\/h3>\n<blockquote>\n<p>Greedy algorithm(fractional knapsack)<\/p>\n<\/blockquote>\n<h3>DIFFICULTY LEVEL:<\/h3>\n<blockquote>\n<p>Medium<\/p>\n<\/blockquote>\n<h3>PROBLEM STATEMENT<code>(<\/code>SIMPLIFIED<code>)<\/code>:<\/h3>\n<blockquote>\n<p>One day some guests came to Aman&#8217;s home. Aman&#8217;s mama told him to bring N items from the market and gave him a bag, but the bag can hold a maximum weight of W units. Every item has some weight wi and a value vi. Aman has to put these items in the bag such that the total value is maximized.<\/p>\n<p>Note: Aman can break items for maximizing the total value of the bag.<\/p>\n<\/blockquote>\n<p><a href=\"https:\/\/mycode.prepbytes.com\/problems\/greedy-algo\/MAXVALUE\" title=\"Go to mycode.prepbytes.com\" target=\"_blank\" rel=\"noopener noreferrer\"><u><strong><\/strong><\/u><\/a><\/p>\n<h4>For Example :<\/h4>\n<pre><code>3 30\n30 8\n40 5\n60 20\n\n121\n\nAman chooses item 2 ,item 1 and 17 g of item 3 (40+30+3*17=121)<\/code><\/pre>\n<h3>OBSERVATION:<\/h3>\n<blockquote>\n<p>Since the items can be broken ,the key point in this question is the value \/ unit mass of the item!!<\/p>\n<\/blockquote>\n<h3>SOLVING APPROACH:<\/h3>\n<h4>BRUTE FORCE:<\/h4>\n<blockquote>\n<p>Try all different subsets that can be formed for the given weight.But that will take exponential time.<\/p>\n<\/blockquote>\n<h4>GREEDY APPROACH:<\/h4>\n<blockquote>\n<p>What we\u2019ll do is while the bag is still not full, we will do a greedy choice. We will choose the item number i which has the maximum value of vi over wi, which is the value per unit of weight. And then if this item fits into bag fully, then take off all this item. Otherwise, if there is only few spaces left in the bag, take so much of this item as to fill the bag to the end. And then, in the end, we\u2019ll return the total value of the items that we took and how much did we take off each item.<\/p>\n<ol>\n<li>\n<p>sort all the items in decreasing order of their value \/ weight ratio.<\/p>\n<\/li>\n<li>\n<p>Start putting the items into the bag beginning from the item with the highest ratio.<\/p>\n<\/li>\n<li>\n<p>Put as many items as you can into the knapsack.<\/p>\n<\/li>\n<\/ol>\n<p><strong>Time complexity:<\/strong> The main time taking step is the sorting of all items in decreasing order of their value \/ weight ratio.<\/p>\n<\/blockquote>\n<h3>SOLUTIONS:<\/h3>\n\t\t\t\t\t\t<style>\r\n\t\t\t\t\r\n\t\t\t\t\t#tab_container_1449 {\r\n\toverflow:hidden;\r\n\tdisplay:block;\r\n\twidth:100%;\r\n\tborder:0px solid #ddd;\r\n\tmargin-bottom:30px;\r\n\t}\r\n\r\n#tab_container_1449 .tab-content{\r\n\tpadding:20px;\r\n\tborder: 1px solid #e6e6e6 !important;\r\n\tmargin-top: 0px;\r\n\tbackground-color:#ffffff !important;\r\n\tcolor: #000000 !important;\r\n\tfont-size:16px !important;\r\n\tfont-family: Open Sans !important;\r\n\t\r\n\t\tborder: 1px solid #e6e6e6 !important;\r\n\t}\r\n#tab_container_1449 .wpsm_nav-tabs {\r\n    border-bottom: 0px solid #ddd;\r\n}\r\n#tab_container_1449 .wpsm_nav-tabs > li.active > a, #tab_container_1449 .wpsm_nav-tabs > li.active > a:hover, #tab_container_1449 .wpsm_nav-tabs > li.active > a:focus {\r\n\tcolor: #000000 !important;\r\n\tcursor: default;\r\n\tbackground-color: #ffffff !important;\r\n\tborder: 1px solid #e6e6e6 !important;\r\n}\r\n\r\n#tab_container_1449 .wpsm_nav-tabs > li > a {\r\n    margin-right: 0px !important; \r\n    line-height: 1.42857143 !important;\r\n    border: 1px solid #d5d5d5 !important;\r\n    border-radius: 0px 0px 0 0 !important; \r\n\tbackground-color: #e8e8e8 !important;\r\n\tcolor: #000000 !important;\r\n\tpadding: 15px 18px 15px 18px !important;\r\n\ttext-decoration: none !important;\r\n\tfont-size: 14px !important;\r\n\ttext-align:center !important;\r\n\tfont-family: Open Sans !important;\r\n}\r\n#tab_container_1449 .wpsm_nav-tabs > li > a:focus {\r\noutline: 0px !important;\r\n}\r\n\r\n#tab_container_1449 .wpsm_nav-tabs > li > a:before {\r\n\tdisplay:none !important;\r\n}\r\n#tab_container_1449 .wpsm_nav-tabs > li > a:after {\r\n\tdisplay:none !important ;\r\n}\r\n#tab_container_1449 .wpsm_nav-tabs > li{\r\npadding:0px !important ;\r\nmargin:0px;\r\n}\r\n\r\n#tab_container_1449 .wpsm_nav-tabs > li > a:hover , #tab_container_1449 .wpsm_nav-tabs > li > a:focus {\r\n    color: #000000 !important;\r\n    background-color: #e8e8e8 !important;\r\n\tborder: 1px solid #d5d5d5 !important;\r\n\t\r\n}\r\n#tab_container_1449 .wpsm_nav-tabs > li > a .fa{\r\n\r\nmargin-right:5px !important;\r\n\r\nmargin-left:5px !important;\r\n\r\n\r\n}\r\n\r\n\t\t#tab_container_1449 .wpsm_nav-tabs a{\r\n\t\t\tbackground-image: none;\r\n\t\t\tbackground-position: 0 0;\r\n\t\t\tbackground-repeat: repeat-x;\r\n\t\t}\r\n\t\t\t\r\n\r\n\r\n#tab_container_1449 .wpsm_nav-tabs > li {\r\n    float: left;\r\n    margin-bottom: -1px !important;\r\n\tmargin-right:0px !important; \r\n}\r\n\r\n\r\n#tab_container_1449 .tab-content{\r\noverflow:hidden !important;\r\n}\r\n\r\n\r\n@media (min-width: 769px) {\r\n\r\n\t#tab_container_1449 .wpsm_nav-tabs > li{\r\n\t\tfloat:left !important ;\r\n\t\t\t\tmargin-right:-1px !important;\r\n\t\t\t\t\t}\r\n\t#tab_container_1449 .wpsm_nav-tabs{\r\n\t\tfloat:none !important;\r\n\t\tmargin:0px !important;\r\n\t}\r\n\r\n\t#tab_container_1449 .wpsm_nav-tabs > li {\r\n\t\t\t\t\r\n\t}\r\n\t#tab_container_1449 .wpsm_nav{\r\n\t\t\t}\r\n\r\n}\r\n\r\n\r\n\r\n@media (max-width: 768px) {\r\n\t#tab_container_1449 .wpsm_nav-tabs > li {\r\n\t\t\t\t\r\n\t}\r\n\t#tab_container_1449 .wpsm_nav{\r\n\t\t\t}\r\n}\r\n\r\n\r\n\t.wpsm_nav-tabs li:before{\r\n\t\tdisplay:none !important;\r\n\t}\r\n\r\n\t@media (max-width: 768px) {\r\n\t\t\t\t\r\n\t\t\t\t.wpsm_nav-tabs{\r\n\t\t\tmargin-left:0px !important;\r\n\t\t\tmargin-right:0px !important; \r\n\t\t\t\r\n\t\t}\r\n\t\t\t\t#tab_container_1449 .wpsm_nav-tabs > li{\r\n\t\t\tfloat:none !important;\r\n\t\t}\r\n\t\t\t\r\n\t}\t\t\t\t<\/style>\r\n\t\t\t\t<div id=\"tab_container_1449\" >\r\n\t \r\n\t\t\t\t\t<ul class=\"wpsm_nav wpsm_nav-tabs\" role=\"tablist\" id=\"myTab_1449\">\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t<li role=\"presentation\"  class=\"active\"  onclick=\"do_resize()\">\r\n\t\t\t\t\t\t\t\t<a href=\"#tabs_desc_1449_1\" aria-controls=\"tabs_desc_1449_1\" role=\"tab\" data-toggle=\"tab\">\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<i class=\"fa fa-code\"><\/i> \t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t<span>C<\/span>\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t<\/a>\r\n\t\t\t\t\t\t\t<\/li>\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t<li role=\"presentation\"  onclick=\"do_resize()\">\r\n\t\t\t\t\t\t\t\t<a href=\"#tabs_desc_1449_2\" aria-controls=\"tabs_desc_1449_2\" role=\"tab\" data-toggle=\"tab\">\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<i class=\"fa fa-code\"><\/i> \t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t<span>C++<\/span>\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t<\/a>\r\n\t\t\t\t\t\t\t<\/li>\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t<li role=\"presentation\"  onclick=\"do_resize()\">\r\n\t\t\t\t\t\t\t\t<a href=\"#tabs_desc_1449_3\" aria-controls=\"tabs_desc_1449_3\" role=\"tab\" data-toggle=\"tab\">\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<i class=\"fa fa-code\"><\/i> \t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t<span>Java<\/span>\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t<\/a>\r\n\t\t\t\t\t\t\t<\/li>\r\n\t\t\t\t\t\t\t\t\t\t\t <\/ul>\r\n\r\n\t\t\t\t\t  <!-- Tab panes -->\r\n\t\t\t\t\t  <div class=\"tab-content\" id=\"tab-content_1449\">\r\n\t\t\t\t\t\t\t\t\t\t\t\t <div role=\"tabpanel\" class=\"tab-pane  in active \" id=\"tabs_desc_1449_1\">\r\n\t\t\t\t\t\t\t\t<!-- wp:enlighter\/codeblock {\"language\":\"c\"} -->\r\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"c\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">\r\n # include&lt;stdio.h&gt;\r\n\r\n     void knapsack(int n, float weight[], float profit[], float capacity) {\r\n     float x[n], tp = 0;\r\n     int i, j, u;\r\n     u = capacity;\r\n\r\n    for (i = 0; i &lt; n; i++)\r\n      x[i] = 0.0;\r\n\r\n    for (i = 0; i &lt; n; i++) {\r\n      if (weight[i] &gt; u)\r\n         break;\r\n      else {\r\n         x[i] = 1.0;\r\n         tp = tp + profit[i];\r\n         u = u - weight[i];\r\n      }\r\n    }\r\n\r\n    if (i &lt; n)\r\n      x[i] = u \/ weight[i];\r\n\r\n    tp = tp + (x[i] * profit[i]);\r\n     int ans=round(tp);\r\n    printf(\"%d\", ans);\r\n\r\n    }\r\n\r\n     int main() {\r\n\r\n     int num, i, j;\r\n      float temp,capacity;\r\n      scanf(\"%d\", &amp;num);\r\n      scanf(\"%f\", &amp;capacity);\r\n     float weight[num], profit[num],ratio[num] ;\r\n     for (i = 0; i &lt; num; i++) {\r\n      scanf(\"%f %f\", &amp;profit[i], &amp;weight[i]);\r\n     }\r\n     for (i = 0; i &lt; num; i++) {\r\n      ratio[i] = profit[i] \/ weight[i];\r\n     } \r\n\r\n     for (i = 0; i &lt; num; i++) {\r\n      for (j = i + 1; j &lt; num; j++) {\r\n         if (ratio[i] &lt; ratio[j]) {\r\n            temp = ratio[j];\r\n            ratio[j] = ratio[i];\r\n            ratio[i] = temp;\r\n\r\n            temp = weight[j];\r\n            weight[j] = weight[i];\r\n            weight[i] = temp;\r\n\r\n            temp = profit[j];\r\n            profit[j] = profit[i];\r\n            profit[i] = temp;\r\n         }\r\n      }\r\n      }\r\n\r\n      knapsack(num, weight, profit, capacity);\r\n        return(0);\r\n     }\r\n<\/pre>\r\n<!-- \/wp:enlighter\/codeblock -->\r\n\t\t\t\t\t\t <\/div>\r\n\t\t\t\t\t\t\t\t\t\t\t\t <div role=\"tabpanel\" class=\"tab-pane \" id=\"tabs_desc_1449_2\">\r\n\t\t\t\t\t\t\t\t<!-- wp:enlighter\/codeblock {\"language\":\"cpp\"} -->\r\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"cpp\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">\r\n#include &lt;bits\/stdc++.h&gt; \r\n      using namespace std;\r\n     bool comp(pair&lt;int, int&gt; a, pair&lt;int, int&gt; b) \r\n    { \r\n    return (double)a.first\/ a.second &gt; \r\n                   (double)b.first\/ b.second; \r\n    }  \r\n    double fractionalKnapsack(int W,pair&lt;int, int&gt;arr[], int n) \r\n    { \r\n    sort(arr, arr + n, comp); \r\n    int curWeight = 0;\r\n    double finalvalue = 0.0;  \r\n    for (int i = 0; i &lt; n; i++) \r\n    { \r\n        if (curWeight + arr[i].second &lt;= W) \r\n        { \r\n            curWeight += arr[i].second; \r\n            finalvalue += arr[i].first; \r\n        } \r\n        else\r\n        { \r\n            int remain = W - curWeight; \r\n            finalvalue += arr[i].first * ((double) remain \/ arr[i].second); \r\n            break; \r\n        } \r\n    } \r\n    return finalvalue; \r\n    }  \r\n     int main() \r\n    { \r\n    int n,w;\r\n    cin&gt;&gt;n&gt;&gt;w;\r\n    pair&lt;int ,int&gt; p[n];\r\n\r\n    for(int i=0;i&lt;n;i++)\r\n      cin&gt;&gt;p[i].first&gt;&gt;p[i].second;\r\n\r\n    cout&lt;&lt;lround(fractionalKnapsack(w, p, n)); \r\n    return 0; \r\n    } \r\n<\/pre>\r\n<!-- \/wp:enlighter\/codeblock -->\r\n\t\t\t\t\t\t <\/div>\r\n\t\t\t\t\t\t\t\t\t\t\t\t <div role=\"tabpanel\" class=\"tab-pane \" id=\"tabs_desc_1449_3\">\r\n\t\t\t\t\t\t\t\t<!-- wp:enlighter\/codeblock {\"language\":\"java\"} -->\r\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"java\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">\r\n\r\nimport java.util.*;\r\n\/\/import java.io.*;\r\nimport java.util.Arrays; \r\n     import java.util.Comparator; \r\n      class FractionalKnapSack\r\n    { \r\n    public static void main(String[] args) \r\n    { Scanner sc = new Scanner(System.in);\r\n        int n = sc.nextInt();\r\n        int capacity = sc.nextInt();\r\n            int p[]=new int[n];\r\n            int a[]=new int[n];\r\n        for(int i=0;i&lt;n;i++)\r\n            {\r\n                p[i] = sc.nextInt();\r\n                a[i] = sc.nextInt();\r\n            }\r\n        double maxValue = getMaxValue(a, p, capacity); \r\n        System.out.println(maxValue); \r\n\r\n    } \r\n    private static double getMaxValue(int[] wt, \r\n                        int[] val, int capacity) \r\n    { \r\n        ItemValue[] iVal = new ItemValue[wt.length]; \r\n\r\n        for(int i = 0; i &lt; wt.length; i++) \r\n        { \r\n            iVal[i] = new ItemValue(wt[i], val[i], i); \r\n        } \r\n        Arrays.sort(iVal, new Comparator&lt;ItemValue&gt;()  \r\n        { \r\n            @Override\r\n            public int compare(ItemValue o1, ItemValue o2)  \r\n            { \r\n                return o2.cost.compareTo(o1.cost) ; \r\n            } \r\n        }); \r\n\r\n\r\n        double totalValue = 0d; \r\n\r\n        for(ItemValue i: iVal) \r\n        { \r\n\r\n            int curWt = (int) i.wt; \r\n            int curVal = (int) i.val; \r\n\r\n            if (capacity - curWt &gt;= 0) \r\n            { \r\n                capacity = capacity-curWt; \r\n                totalValue += curVal; \r\n\r\n            } \r\n            else\r\n            { \r\n                double fraction = ((double)capacity\/(double)curWt); \r\n                totalValue += (curVal*fraction); \r\n                capacity = (int)(capacity - (curWt*fraction)); \r\n                break; \r\n            } \r\n\r\n\r\n        } \r\n\r\n        return totalValue; \r\n    } \r\n    static class ItemValue  \r\n    { \r\n        Double cost; \r\n        double wt, val, ind; \r\n        public ItemValue(int wt, int val, int ind) \r\n        { \r\n            this.wt = wt; \r\n            this.val = val; \r\n            this.ind = ind; \r\n            cost = new Double(val\/wt ); \r\n        } \r\n    } \r\n     } \r\n\r\n<\/pre>\r\n<!-- \/wp:enlighter\/codeblock -->\r\n\t\t\t\t\t\t <\/div>\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t <\/div>\r\n\t\t\t\t\t \r\n\t\t\t\t <\/div>\r\n <script>\r\n\t\tjQuery(function () {\r\n\t\t\tjQuery('#myTab_1449 a:first').tab('show')\r\n\t\t});\r\n\t\t\r\n\t\t\t\tjQuery(function(){\r\n\t\t\tvar b=\"fadeIn\";\r\n\t\t\tvar c;\r\n\t\t\tvar a;\r\n\t\t\td(jQuery(\"#myTab_1449 a\"),jQuery(\"#tab-content_1449\"));function d(e,f,g){\r\n\t\t\t\te.click(function(i){\r\n\t\t\t\t\ti.preventDefault();\r\n\t\t\t\t\tjQuery(this).tab(\"show\");\r\n\t\t\t\t\tvar h=jQuery(this).data(\"easein\");\r\n\t\t\t\t\tif(c){c.removeClass(a);}\r\n\t\t\t\t\tif(h){f.find(\"div.active\").addClass(\"animated \"+h);a=h;}\r\n\t\t\t\t\telse{if(g){f.find(\"div.active\").addClass(\"animated \"+g);a=g;}else{f.find(\"div.active\").addClass(\"animated \"+b);a=b;}}c=f.find(\"div.active\");\r\n\t\t\t\t});\r\n\t\t\t}\r\n\t\t});\r\n\t\t\r\n\r\n\t\tfunction do_resize(){\r\n\r\n\t\t\tvar width=jQuery( '.tab-content .tab-pane iframe' ).width();\r\n\t\t\tvar height=jQuery( '.tab-content .tab-pane iframe' ).height();\r\n\r\n\t\t\tvar toggleSize = true;\r\n\t\t\tjQuery('iframe').animate({\r\n\t\t\t    width: toggleSize ? width : 640,\r\n\t\t\t    height: toggleSize ? height : 360\r\n\t\t\t  }, 250);\r\n\r\n\t\t\t  toggleSize = !toggleSize;\r\n\t\t}\r\n\r\n\r\n\t<\/script>\r\n\t\t\t\t\r\n\t\t\t\n<p>[forminator_quiz id=&quot;1451&quot;]<\/p>\n<p>This article tried to discuss the concept of <strong>Greedy algorithm<\/strong>. Hope this blog helps you understand and solve the problem. To practice more problems on Greedy algorithm you can check out <a href=\"#\"><\/a>.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>CONCEPTS USED: Greedy algorithm(fractional knapsack) DIFFICULTY LEVEL: Medium PROBLEM STATEMENT(SIMPLIFIED): One day some guests came to Aman&#8217;s home. Aman&#8217;s mama told him to bring N items from the market and gave him a bag, but the bag can hold a maximum weight of W units. Every item has some weight wi and a value vi. [&hellip;]<\/p>\n","protected":false},"author":52,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_monsterinsights_skip_tracking":false,"_monsterinsights_sitenote_active":false,"_monsterinsights_sitenote_note":"","_monsterinsights_sitenote_category":0,"footnotes":""},"categories":[99],"tags":[103,119],"class_list":["post-1448","post","type-post","status-publish","format-standard","hentry","category-greedy-algo-interview-coding","tag-greedy-algorithm","tag-inyerview"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v25.8 - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>Greedy Algo Interview Coding | Maximum Value | Prepbytes<\/title>\n<meta name=\"description\" content=\"Aman Can Break Items for Maximizing the Total Value of the Bag.we Will Choose the Item Number I Which Has the Maximum Value of Vi Over Wi, Which Is the Value Per Unit of Weight.\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/prepbytes.com\/blog\/maximum-value\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Greedy Algo Interview Coding | Maximum Value | Prepbytes\" \/>\n<meta property=\"og:description\" content=\"Aman Can Break Items for Maximizing the Total Value of the Bag.we Will Choose the Item Number I Which Has the Maximum Value of Vi Over Wi, Which Is the Value Per Unit of Weight.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/prepbytes.com\/blog\/maximum-value\/\" \/>\n<meta property=\"og:site_name\" content=\"PrepBytes Blog\" \/>\n<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/prepbytes0211\/\" \/>\n<meta property=\"article:published_time\" content=\"2020-06-11T04:17:47+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2022-03-30T11:32:55+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/prepbytes-misc-images.s3.ap-south-1.amazonaws.com\/assets\/1645174195999-Article_397.png\" \/>\n<meta name=\"author\" content=\"Prepbytes\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"Prepbytes\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"2 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\/\/prepbytes.com\/blog\/maximum-value\/#article\",\"isPartOf\":{\"@id\":\"https:\/\/prepbytes.com\/blog\/maximum-value\/\"},\"author\":{\"name\":\"Prepbytes\",\"@id\":\"http:\/\/43.205.93.38\/#\/schema\/person\/3f7dc4ae851791d5947a7f99df363d5e\"},\"headline\":\"MAXIMUM VALUE\",\"datePublished\":\"2020-06-11T04:17:47+00:00\",\"dateModified\":\"2022-03-30T11:32:55+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/prepbytes.com\/blog\/maximum-value\/\"},\"wordCount\":342,\"commentCount\":0,\"publisher\":{\"@id\":\"http:\/\/43.205.93.38\/#organization\"},\"image\":{\"@id\":\"https:\/\/prepbytes.com\/blog\/maximum-value\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/prepbytes-misc-images.s3.ap-south-1.amazonaws.com\/assets\/1645174195999-Article_397.png\",\"keywords\":[\"greedy algorithm\",\"inyerview\"],\"articleSection\":[\"Greedy Algo Interview Coding\"],\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\/\/prepbytes.com\/blog\/maximum-value\/#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/prepbytes.com\/blog\/maximum-value\/\",\"url\":\"https:\/\/prepbytes.com\/blog\/maximum-value\/\",\"name\":\"Greedy Algo Interview Coding | Maximum Value | Prepbytes\",\"isPartOf\":{\"@id\":\"http:\/\/43.205.93.38\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\/\/prepbytes.com\/blog\/maximum-value\/#primaryimage\"},\"image\":{\"@id\":\"https:\/\/prepbytes.com\/blog\/maximum-value\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/prepbytes-misc-images.s3.ap-south-1.amazonaws.com\/assets\/1645174195999-Article_397.png\",\"datePublished\":\"2020-06-11T04:17:47+00:00\",\"dateModified\":\"2022-03-30T11:32:55+00:00\",\"description\":\"Aman Can Break Items for Maximizing the Total Value of the Bag.we Will Choose the Item Number I Which Has the Maximum Value of Vi Over Wi, Which Is the Value Per Unit of Weight.\",\"breadcrumb\":{\"@id\":\"https:\/\/prepbytes.com\/blog\/maximum-value\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/prepbytes.com\/blog\/maximum-value\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/prepbytes.com\/blog\/maximum-value\/#primaryimage\",\"url\":\"https:\/\/prepbytes-misc-images.s3.ap-south-1.amazonaws.com\/assets\/1645174195999-Article_397.png\",\"contentUrl\":\"https:\/\/prepbytes-misc-images.s3.ap-south-1.amazonaws.com\/assets\/1645174195999-Article_397.png\"},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/prepbytes.com\/blog\/maximum-value\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"http:\/\/43.205.93.38\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Greedy Algo Interview Coding\",\"item\":\"https:\/\/prepbytes.com\/blog\/category\/greedy-algo-interview-coding\/\"},{\"@type\":\"ListItem\",\"position\":3,\"name\":\"MAXIMUM VALUE\"}]},{\"@type\":\"WebSite\",\"@id\":\"http:\/\/43.205.93.38\/#website\",\"url\":\"http:\/\/43.205.93.38\/\",\"name\":\"PrepBytes Blog\",\"description\":\"ONE-STOP RESOURCE FOR EVERYTHING RELATED TO CODING\",\"publisher\":{\"@id\":\"http:\/\/43.205.93.38\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"http:\/\/43.205.93.38\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"},{\"@type\":\"Organization\",\"@id\":\"http:\/\/43.205.93.38\/#organization\",\"name\":\"Prepbytes\",\"url\":\"http:\/\/43.205.93.38\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"http:\/\/43.205.93.38\/#\/schema\/logo\/image\/\",\"url\":\"https:\/\/blog.prepbytes.com\/wp-content\/uploads\/2025\/07\/uzxxllgloialmn9mhwfe.webp\",\"contentUrl\":\"https:\/\/blog.prepbytes.com\/wp-content\/uploads\/2025\/07\/uzxxllgloialmn9mhwfe.webp\",\"width\":160,\"height\":160,\"caption\":\"Prepbytes\"},\"image\":{\"@id\":\"http:\/\/43.205.93.38\/#\/schema\/logo\/image\/\"},\"sameAs\":[\"https:\/\/www.facebook.com\/prepbytes0211\/\",\"https:\/\/www.instagram.com\/prepbytes\/\",\"https:\/\/www.linkedin.com\/company\/prepbytes\/\",\"https:\/\/www.youtube.com\/channel\/UC0xGnHDrjUM1pDEK2Ka5imA\"]},{\"@type\":\"Person\",\"@id\":\"http:\/\/43.205.93.38\/#\/schema\/person\/3f7dc4ae851791d5947a7f99df363d5e\",\"name\":\"Prepbytes\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"http:\/\/43.205.93.38\/#\/schema\/person\/image\/\",\"url\":\"https:\/\/secure.gravatar.com\/avatar\/232042cd1a1ea0e982c96d2a2ec93fb70a8e864e00784491231e7bfe5a9e06b5?s=96&d=mm&r=g\",\"contentUrl\":\"https:\/\/secure.gravatar.com\/avatar\/232042cd1a1ea0e982c96d2a2ec93fb70a8e864e00784491231e7bfe5a9e06b5?s=96&d=mm&r=g\",\"caption\":\"Prepbytes\"},\"url\":\"https:\/\/prepbytes.com\/blog\/author\/gourav-jaincollegedekho-com\/\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Greedy Algo Interview Coding | Maximum Value | Prepbytes","description":"Aman Can Break Items for Maximizing the Total Value of the Bag.we Will Choose the Item Number I Which Has the Maximum Value of Vi Over Wi, Which Is the Value Per Unit of Weight.","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/prepbytes.com\/blog\/maximum-value\/","og_locale":"en_US","og_type":"article","og_title":"Greedy Algo Interview Coding | Maximum Value | Prepbytes","og_description":"Aman Can Break Items for Maximizing the Total Value of the Bag.we Will Choose the Item Number I Which Has the Maximum Value of Vi Over Wi, Which Is the Value Per Unit of Weight.","og_url":"https:\/\/prepbytes.com\/blog\/maximum-value\/","og_site_name":"PrepBytes Blog","article_publisher":"https:\/\/www.facebook.com\/prepbytes0211\/","article_published_time":"2020-06-11T04:17:47+00:00","article_modified_time":"2022-03-30T11:32:55+00:00","og_image":[{"url":"https:\/\/prepbytes-misc-images.s3.ap-south-1.amazonaws.com\/assets\/1645174195999-Article_397.png","type":"","width":"","height":""}],"author":"Prepbytes","twitter_card":"summary_large_image","twitter_misc":{"Written by":"Prepbytes","Est. reading time":"2 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/prepbytes.com\/blog\/maximum-value\/#article","isPartOf":{"@id":"https:\/\/prepbytes.com\/blog\/maximum-value\/"},"author":{"name":"Prepbytes","@id":"http:\/\/43.205.93.38\/#\/schema\/person\/3f7dc4ae851791d5947a7f99df363d5e"},"headline":"MAXIMUM VALUE","datePublished":"2020-06-11T04:17:47+00:00","dateModified":"2022-03-30T11:32:55+00:00","mainEntityOfPage":{"@id":"https:\/\/prepbytes.com\/blog\/maximum-value\/"},"wordCount":342,"commentCount":0,"publisher":{"@id":"http:\/\/43.205.93.38\/#organization"},"image":{"@id":"https:\/\/prepbytes.com\/blog\/maximum-value\/#primaryimage"},"thumbnailUrl":"https:\/\/prepbytes-misc-images.s3.ap-south-1.amazonaws.com\/assets\/1645174195999-Article_397.png","keywords":["greedy algorithm","inyerview"],"articleSection":["Greedy Algo Interview Coding"],"inLanguage":"en-US","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/prepbytes.com\/blog\/maximum-value\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/prepbytes.com\/blog\/maximum-value\/","url":"https:\/\/prepbytes.com\/blog\/maximum-value\/","name":"Greedy Algo Interview Coding | Maximum Value | Prepbytes","isPartOf":{"@id":"http:\/\/43.205.93.38\/#website"},"primaryImageOfPage":{"@id":"https:\/\/prepbytes.com\/blog\/maximum-value\/#primaryimage"},"image":{"@id":"https:\/\/prepbytes.com\/blog\/maximum-value\/#primaryimage"},"thumbnailUrl":"https:\/\/prepbytes-misc-images.s3.ap-south-1.amazonaws.com\/assets\/1645174195999-Article_397.png","datePublished":"2020-06-11T04:17:47+00:00","dateModified":"2022-03-30T11:32:55+00:00","description":"Aman Can Break Items for Maximizing the Total Value of the Bag.we Will Choose the Item Number I Which Has the Maximum Value of Vi Over Wi, Which Is the Value Per Unit of Weight.","breadcrumb":{"@id":"https:\/\/prepbytes.com\/blog\/maximum-value\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/prepbytes.com\/blog\/maximum-value\/"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/prepbytes.com\/blog\/maximum-value\/#primaryimage","url":"https:\/\/prepbytes-misc-images.s3.ap-south-1.amazonaws.com\/assets\/1645174195999-Article_397.png","contentUrl":"https:\/\/prepbytes-misc-images.s3.ap-south-1.amazonaws.com\/assets\/1645174195999-Article_397.png"},{"@type":"BreadcrumbList","@id":"https:\/\/prepbytes.com\/blog\/maximum-value\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"http:\/\/43.205.93.38\/"},{"@type":"ListItem","position":2,"name":"Greedy Algo Interview Coding","item":"https:\/\/prepbytes.com\/blog\/category\/greedy-algo-interview-coding\/"},{"@type":"ListItem","position":3,"name":"MAXIMUM VALUE"}]},{"@type":"WebSite","@id":"http:\/\/43.205.93.38\/#website","url":"http:\/\/43.205.93.38\/","name":"PrepBytes Blog","description":"ONE-STOP RESOURCE FOR EVERYTHING RELATED TO CODING","publisher":{"@id":"http:\/\/43.205.93.38\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"http:\/\/43.205.93.38\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":"Organization","@id":"http:\/\/43.205.93.38\/#organization","name":"Prepbytes","url":"http:\/\/43.205.93.38\/","logo":{"@type":"ImageObject","inLanguage":"en-US","@id":"http:\/\/43.205.93.38\/#\/schema\/logo\/image\/","url":"https:\/\/blog.prepbytes.com\/wp-content\/uploads\/2025\/07\/uzxxllgloialmn9mhwfe.webp","contentUrl":"https:\/\/blog.prepbytes.com\/wp-content\/uploads\/2025\/07\/uzxxllgloialmn9mhwfe.webp","width":160,"height":160,"caption":"Prepbytes"},"image":{"@id":"http:\/\/43.205.93.38\/#\/schema\/logo\/image\/"},"sameAs":["https:\/\/www.facebook.com\/prepbytes0211\/","https:\/\/www.instagram.com\/prepbytes\/","https:\/\/www.linkedin.com\/company\/prepbytes\/","https:\/\/www.youtube.com\/channel\/UC0xGnHDrjUM1pDEK2Ka5imA"]},{"@type":"Person","@id":"http:\/\/43.205.93.38\/#\/schema\/person\/3f7dc4ae851791d5947a7f99df363d5e","name":"Prepbytes","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"http:\/\/43.205.93.38\/#\/schema\/person\/image\/","url":"https:\/\/secure.gravatar.com\/avatar\/232042cd1a1ea0e982c96d2a2ec93fb70a8e864e00784491231e7bfe5a9e06b5?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/232042cd1a1ea0e982c96d2a2ec93fb70a8e864e00784491231e7bfe5a9e06b5?s=96&d=mm&r=g","caption":"Prepbytes"},"url":"https:\/\/prepbytes.com\/blog\/author\/gourav-jaincollegedekho-com\/"}]}},"_links":{"self":[{"href":"https:\/\/prepbytes.com\/blog\/wp-json\/wp\/v2\/posts\/1448","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/prepbytes.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/prepbytes.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/prepbytes.com\/blog\/wp-json\/wp\/v2\/users\/52"}],"replies":[{"embeddable":true,"href":"https:\/\/prepbytes.com\/blog\/wp-json\/wp\/v2\/comments?post=1448"}],"version-history":[{"count":9,"href":"https:\/\/prepbytes.com\/blog\/wp-json\/wp\/v2\/posts\/1448\/revisions"}],"predecessor-version":[{"id":8353,"href":"https:\/\/prepbytes.com\/blog\/wp-json\/wp\/v2\/posts\/1448\/revisions\/8353"}],"wp:attachment":[{"href":"https:\/\/prepbytes.com\/blog\/wp-json\/wp\/v2\/media?parent=1448"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/prepbytes.com\/blog\/wp-json\/wp\/v2\/categories?post=1448"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/prepbytes.com\/blog\/wp-json\/wp\/v2\/tags?post=1448"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}