please check the output
output is wrong
Error in this question cout returns value of input
Your approach does not seem correct.
Follow this
At each instance we would need to consider two possibilities that we can pick the first as well as the last element of the remaining array. Both these possibilities give rise to two more possibilities depending on the other player. Since the second player plays optimally and try to minimise our score. So overall we have two possibilities at each instance.
For the first possibility , where we could pick the first element , the other player will pick the next element from the side that would minimise our total score.
Similarly , for the second possibility , where we can pick the last element , the other player would still pick the next element from the side that would minimise our total score.
We entertain both these cases and take the maximum result of the two and return that result.
We take two pointer variables , say ‘i’ and ‘j’ which each represent the starting and the ending point of the remaining array currently in consideration. We work till the two pointers cross each othe
refer to below code : -
im not able to understand functionality pickfirst,picklast
There must be a lecture video on “Optimal Game Strategy” by Prateek Bhaiya.
Check it in Dynamic Programming Section and watch that. You will then understand the recursive relation for this question