Whats the mistake in the logic of code as sample test case is passing but all other tetcase failed

Your logic is incorrect because both are equally smart
For
4
4 1000 2 1
Ans is 1001
Because we will pick 1 and 1000
If we pick 4 then opponent picks 1000

Hey @anantgovil123
Remember both A and B are equally smart and we want A to get maximum.
if coins are indexed from i to j and both have to choose one out of two ends.

case 1: if A chooses a[i], now opponent can choose either a[i+1] or a[j] whatever is maximum out of two. which means A will get Minimum in his next chance based on opponent choice.
case 1.a: if opponent choose a[i+1], player will chose either a[i+2] or or a[j]
case 1.b: if opponent choose a[j], player will chose either a[i+1] or or a[j-1]
So A will get minimum out of case 1.a and case 1.b…as opponent is equally smarter and choose such a coin which give him maximum but minimum to player A.

case 2: if A chooses a[j], now opponent can choose either a[i] or a[j-1] whatever is maximum out of two. which means A will get Minimum in his next chance based on opponent choice.
case 2.a: if opponent choose a[i], player will chose either a[i+1] or or a[j-1]
case 2.b: if opponent choose a[j-1], player will chose either a[i] or or a[j-2]
So A will get minimum out of case 2.a and case 2.a…as opponent is equally smarter and choose such a coin which give him maximum but minimum to player A.

This will give you a recursive case in which final answer is max(case1,case2)

i am not still able to solve it can u tell me how to solve it through recursion

Hey @anantgovil123
Here check this https://ide.codingblocks.com/s/285780?_ga=2.204821328.1350203873.1600106484-1795954092.1597348154