在excel表里做网站模板,室内设计联盟课堂,北京建设银行网站田村,用模板做的网站多少钱题目不难#xff0c;却想了好长时间#xff0c;目测自己DP还是很水。。。囧 思路#xff1a;舍f[i][j]为前i行j列的最大矿总量不难推出状态转移方程为f[i][j]max(f[i-1][j]line[i][j],f[i][j-1]row[j][i]) 其中line[i][j]为第i行前j个A矿的和#xff08;a[i][1]a[i][2]...a… 题目不难却想了好长时间目测自己DP还是很水。。。囧 思路舍f[i][j]为前i行j列的最大矿总量不难推出状态转移方程为f[i][j]max(f[i-1][j]line[i][j],f[i][j-1]row[j][i]) 其中line[i][j]为第i行前j个A矿的和a[i][1]a[i][2]...a[i][j],row[i][j]为第i列前j个B矿的和b[i][1]b[i][2]...b[i][j] result: 代码如下 #include cstdio
inline int max(int x,int y)
{return xy?x:y;
}
int a[510][510],b[510][510],f[510][510],n,m,line[510][510],row[510][510];
int main()
{int i,j;while (scanf(%d%d,n,m) (n || m)){for (i1; in; i)for (j1; jm; j)scanf(%d,a[i][j]);for (i1; in; i)for (j1; jm; j)scanf(%d,b[i][j]);for (i1; in; i)for (j1; jm; j)line[i][j]line[i][j-1]a[i][j];for (i1; im; i)for (j1; jn; j)row[i][j]row[i][j-1]b[j][i];for (i1; in; i)for (j1; jm; j)f[i][j]max(f[i-1][j]line[i][j],f[i][j-1]row[j][i]);printf(%d\n,f[n][m]);}return 0;
}转载于:https://www.cnblogs.com/Chierush/archive/2013/04/01/2993751.html