hdu 4597Play Game

來源:互聯網
上載者:User

#include <cstdio>#include <cstring>int dp[23][23][23][23];int arr[2][23];int max(int x,int y){    return x>y?x:y;}int dfs(int x1,int y1,int x2,int y2){    if(x1>y1&&x2>y2) return 0;    if(dp[x1][y1][x2][y2]) return dp[x1][y1][x2][y2];    int v=0,sum=arr[0][y1]-arr[0][x1-1]+arr[1][y2]-arr[1][x2-1];    if(x1<=y1)    {        v=max(v,sum-dfs(x1+1,y1,x2,y2));        v=max(v,sum-dfs(x1,y1-1,x2,y2));    }    if(x2<=y2)    {        v=max(v,sum-dfs(x1,y1,x2+1,y2));        v=max(v,sum-dfs(x1,y1,x2,y2-1));    }    return dp[x1][y1][x2][y2]=v;}int main(){//    freopen("in.txt","r",stdin);    int t,n,x;    scanf("%d",&t);    while(t--)    {        scanf("%d",&n);        arr[0][0]=arr[1][0]=0;        for(int i=0; i<2; ++i)            for(int j=1; j<=n; ++j)            {                scanf("%d",&x);                arr[i][j]=x+arr[i][j-1];            }        memset(dp,0,sizeof(dp));        printf("%d\n",dfs(1,n,1,n));    }    return 0;}


相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.