最大化 arr[j] – arr[i] + arr[l] – arr[k],使得在 C++ 中 i < j < k < l
我们得到了一个整数数组。目标是最大化表达的价值-
arr[j]-arr[i]+arr[l]-arr[k];i 我们将通过遍历所有元素并计算表达式的值来做到这一点。如果到目前为止找到最大值,则将其存储并最后返回。输入
arr[]= { 1,2,3,4 }
输出结果Maximum value for above expression is : 2
解释-对于i arr[j]-arr[i]+arr[l]-arr[k]=2-1+4-3=1+1=2输入
arr[]= { 5,5,5,5,5 }
输出结果Maximum value for above expression is : 0
说明-对于i arr[j]-arr[i]+arr[l]-arr[k]=5-5+5-5=0 整数数组a[]存储数字。 函数maximumSum(intarr[],intn)以数组及其长度n作为输入并返回arr[j]-arr[i]+arr[l]-arr[k]的最大值,使得i 变量sum用于存储arr[j]-arr[i]和arr[l]-arr[k]的和。 将maxx=arr[0]初始化为初始最大和。 遍历数组从i=0,j=1,k=2,l=3到i 对于i,j,k,l中的每个索引,计算arr[j]-arr[i]+arr[l]-arr[k]并存储在sum 如果当前总和>=maxx更新maxx。 最后返回maxx作为所需的结果。下面程序中使用的方法如下
示例
#include
输出结果最大值为:24