Advertisement
spider68

Pots of Gold Game

Jan 19th, 2021
198
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 0.41 KB | None | 0 0
  1. int arr[101][101];
  2. int dp(int i,int j,int A[],int s){
  3.     if(arr[i][j]!=-1)return arr[i][j];
  4.     if(i+1==j)return max(A[i],A[j]);
  5.     arr[i][j]=max(s-dp(i+1,j,A,s-A[i]),s-dp(i,j-1,A,s-A[j]));
  6.     return arr[i][j];
  7. }
  8. int maxCoins(int A[],int N)
  9. {
  10.     int s=0;
  11.     if(N==1)return A[0];
  12.     for(int i=0;i<=N;i++)for(int j=0;j<=N;j++)arr[i][j]=-1;
  13.     for(int i=0;i<N;i++)s+=A[i];
  14.     return dp(0,N-1,A,s);
  15. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement