Beans

来源:互联网 发布:淘宝网商家注册 编辑:程序博客网 时间:2024/05/23 22:49


http://acm.hdu.edu.cn/showproblem.php?pid=2845

#include<stdio.h>
int dp[200010],a[200010],b[200010];
#define max(x,y) x>y?x:y
int main()
{
 int n,m,i,j;
 while(scanf("%d%d",&n,&m)!=EOF)
 {
  dp[0]=a[0]=b[0]=0;
  for(i=1;i<=n;i++)
  {
   for(j=1;j<=m;j++)
    scanf("%d",&a[j]);
   dp[1]=a[1];
   for(j=2;j<=m;j++)
    dp[j]=max(dp[j-2]+a[j],dp[j-1]);
   b[i]=dp[m];
  }
  dp[1]=b[1];
  for(i=2;i<=n;i++)
   dp[i]=max(dp[i-2]+b[i],dp[i-1]);
  printf("%d\n",dp[n]);
 }
 return 0;
}

0 0