Hungry3

梦想到达塔顶的蜗牛

Codeforces Round #208 (Div. 2) D. Dima and Hares DP

#include<cstdio>
#include<iostream>
using namespace std;
#define maxn 3100
int a[maxn],b[maxn],c[maxn];
int dp[maxn][2];
int main()
{
    int i,j,n;
    cin>>n;
    for(i=1;i<=n;i++)
    cin>>a[i];
    for(i=1;i<=n;i++)
    cin>>b[i];
    for(i=1;i<=n;i++)
    cin>>c[i];
    dp[n][0]=a[n];
    dp[n][1]=b[n];
    for(i=n-1;i>=1;i--)
    {//dp[i][0]第i只兔比第i-1只先喂,dp[i][1]第i只兔比第i-1只兔后喂
        dp[i][0]=max(dp[i+1][0]+b[i],dp[i+1][1]+a[i]);
        dp[i][1]=max(dp[i+1][1]+b[i],dp[i+1][0]+c[i]);
    }
    cout<<dp[1][0]<<endl;
}
View Code

 

posted on 2013-11-10 18:12  Hungry3  阅读(196)  评论(0)    收藏  举报

导航