用 C++ 选择划分或原样考虑的最大值


在本教程中,我们将讨论一个程序,以选择划分或原样考虑的最大值。

为此,我们将提供一个整数值。我们的任务是通过递归划分数字为四部分或使用给定函数 F(n) = max( (F(n/2) + F(n/3) + F(n/4) + F(n/5)), n)选择它,找出最大值。

示例

 在线演示

#include <bits/stdc++.h>
using namespace std;
//calculating the maximum result
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 << "Maximum possible sum: " << findMaximum(number)<< endl;
   return 0;
}

输出

Maximum possible sum: 57

更新日期:2020 年 8 月 21 日

79 次浏览

开启您的 职业

完成本课程获得认证

开始
广告
© . All rights reserved.