码迷,mamicode.com
首页 > 其他好文 > 详细

hdu-5569matrix(dp)

时间:2015-11-26 14:53:38      阅读:159      评论:0      收藏:0      [点我收藏+]

标签:

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

题目意思:

从(1,1)点出发只能向右和向下走,到达(n,n)点时所得到的价值最小,

价值是Let the numbers you go through become an array a1,a2,...,a2k. The cost is a1a2+a3a4+...+a2k1a2k,每个

格都有相应的价值ak.

思路:dp,状态转移方程是如果(i+j)%2==1-- dp[i][j]=min(dp[i-1][j]+a[i][j]*a[i-1][j],dp[i][j-1]+a[i][j-1]*a[i][j]);

如果(i+j)%2==0--dp[i][j]=min(dp[i-1][j],dp[i][j-1]);

 1 #include<stdio.h>
 2 #include<algorithm>
 3 #include<iostream>
 4 #include<string.h>
 5 #include<stdlib.h>
 6 typedef long long LL;
 7 LL dp[1005][1005];
 8 LL a[1005][1005];
 9 using namespace std;
10 int main(void)
11 {
12     int n,i,j,k,p,q;
13     while(scanf("%d %d",&p,&q)!=EOF)
14     {
15         for(i=1; i<=p; i++)
16         {
17             for(j=1; j<=q; j++)
18             {
19                 scanf("%lld",&a[i][j]);
20             }
21         }
22         memset(dp,0,sizeof(dp));
23         for(i=1; i<=p; i++)//初始化边界当j为1时,dp[i][j]只能从dp[i-1][1]转移而来
24         {
25             if((i+1)%2==1)
26             {
27                 dp[i][1]=dp[i-1][1]+a[i][1]*a[i-1][1];
28             }
29             else dp[i][1]=dp[i-1][1];
30         }
31 
32         for(i=1; i<=q; i++)//初始化边界当i为1时,dp[i][j]只能从dp[1][j-1]转移而来
33         {
34             if((i+1)%2==1)
35             {
36                 dp[1][i]=dp[1][i-1]+a[1][i-1]*a[1][i];
37             }
38             else dp[1][i]=dp[1][i-1];
39         }
40         for(i=2; i<=p; i++)
41         {
42             for(j=2; j<=q; j++)
43             {
44                 if((i+j)%2==1)
45                     dp[i][j]=min(dp[i-1][j]+a[i][j]*a[i-1][j],dp[i][j-1]+a[i][j-1]*a[i][j]);
46                 else dp[i][j]=min(dp[i-1][j],dp[i][j-1]);
47             }
48         }
49         printf("%d\n",dp[p][q]);
50     }
51     return 0;
52 }

 

hdu-5569matrix(dp)

标签:

原文地址:http://www.cnblogs.com/zzuli2sjy/p/4997416.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!