Geeksforgeeks

Error

×

Leaderboard

Showing:

Handle | Score |
---|---|

@Ibrahim Nash | 6381 |

@blackshadows | 6329 |

@mb1973 | 5388 |

@Quandray | 5231 |

@akhayrutdinov | 5111 |

@saiujwal13083 | 4510 |

@sanjay05 | 3762 |

@marius_valentin_dragoi | 3522 |

@sushant_a | 3459 |

@verma_ji | 3357 |

@KshamaGupta | 3318 |

Complete Leaderboard | |

Handle | Score |

@1905439 | 553 |

@terabaap123 | 508 |

@smitadiwedi1991 | 279 |

@DevanandJayakumar | 250 |

@atishagusain | 244 |

@gupta_10 | 226 |

@nipun edara | 224 |

@shubhamkhullar7 | 224 |

@sharmachandan487 | 204 |

@balunagar | 204 |

@arshjit_singh7 | 190 |

Complete Leaderboard |

Given an array **arr[]** of size N. Find the maximum value of arr[j] – arr[i] + arr[l] – arr[k], such that i < j < k < l.

**Example 1:**

**Input**
N = 3
Arr[] = {1, 2, 3}
**Output:**-1
**Explanation:
**N<4 so no such i,j,k,l is possible.

**Example 2:**

**Input:**
N = 5
Arr[] = {4, 8, 9, 2, 20}
**Output: **23
**Explanation:
**Here i = 0, j = 2, k = 3, l = 4 so
arr[j] – arr[i] + arr[l] – arr[k]
= 9 – 4 + 20 – 2 = 23

**Your Task: **

You don't need to read input or print anything. Your task is to complete the function **findMaxValue()** which takes the array **arr[]** and its size **N**** **as input parameters and returns the maximum value of arr[j] – arr[i] + arr[l] – arr[k].

**Expected Time Complexity :** O(N)

**Expected Auxiliary Space :** O(N)

**Constraints:**

1 ≤ N ≤ 10^{5}

1 ≤ A[i] ≤ 10^{5}

Login to report an issue on this page.

We strongly recommend solving this problem on your own before viewing its editorial. Do you still want to view the editorial?

Yes
Maximum value

...