इस ट्यूटोरियल में, हम विभाजित करने या जैसा है वैसा मानने के विकल्प के साथ अधिकतम मान ढूंढने के लिए एक प्रोग्राम पर चर्चा करेंगे।
इसके लिए हमें एक पूर्णांक मान प्रदान किया जाएगा। हमारा कार्य दिए गए फ़ंक्शन F(n) = max( (F(n/2) + F(n/3) + F(n/4) + F(n/5)), n) का उपयोग करके संख्या को चार भागों में पुनरावर्ती रूप से विभाजित करके या इसे जैसा है वैसा चुनकर अधिकतम मान ढूंढना है।
उदाहरण
#include <bits/stdc++.h> using namespace std; // अधिकतम परिणाम की गणना int findMaximum(int size) { int term[size + 1]; term[0] = 0; term[1] = 1; int i=2; while(i <= size) { term[i] = max(i, (term[i / 2] + term[i / 3] + term[i / 4] + term[i / 5])); i = i+1; } return term[size]; } int main() { int number = 37; cout << "अधिकतम संभावित योग: " << findMaximum(number)<< endl; return 0; }
आउटपुट
अधिकतम संभावित योग: 57