您的位置:首页 > 其它

poj 3176 Cow Bowling 简单DP

2015-02-15 12:55 453 查看
题目链接:http://poj.org/problem?id=3176

#include <cstdio>
#include <cstdlib>
#include <ctime>
#include <iostream>
#include <cmath>
#include <cstring>
#include <algorithm>
#include <stack>
#include <set>
#include <queue>
#include <vector>

using namespace std;

const int maxn = 400;
int dp[maxn][maxn];
int a[maxn][maxn];

int main()
{
//freopen("in.txt", "r", stdin);

int n;

scanf("%d", &n);

for(int i = 1; i <= n; i++)
{
for(int j = 1; j <= i; j++)
{
scanf("%d", &a[i][j]);
}
}

dp[1][1] = a[1][1];
for(int i = 1; i <= n; i++)
{
for(int j = 1; j <= i; j++)
{
dp[i][j] = max(dp[i-1][j-1], dp[i-1][j]) + a[i][j];
}
}

int ans = 0;
for(int i = 1; i <= n; i++)
ans = max(ans, dp
[i]);

printf("%d\n", ans);

return 0;
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: