Cow Bowling(动态规划)
2017-08-10 19:13
176 查看
Cow Bowling
Description
The cows don't use actual bowling balls when they go bowling. They each take a number (in the range 0..99), though, and line up in a standard bowling-pin-like triangle like this:
Then the other cows traverse the triangle starting from its tip and moving "down" to one of the two diagonally adjacent cows until the "bottom" row is reached. The cow's score is the sum of the numbers of the cows visited along the way. The cow with the highest
score wins that frame.
Given a triangle with N (1 <= N <= 350) rows, determine the highest possible sum achievable.
Input
Line 1: A single integer, N
Lines 2..N+1: Line i+1 contains i space-separated integers that represent row i of the triangle.
Output
Line 1: The largest sum achievable using the traversal rules
Sample Input
Sample Output
Hint
Explanation of the sample:
The highest score is achievable by traversing the cows as shown above.
Source
USACO 2005 December Bronze
题意:
求一条路径,使从头到尾和最大。
思路:
简单动态规划。
代码:
Time Limit: 1000MS | Memory Limit: 65536K | |
Total Submissions: 19855 | Accepted: 13164 |
The cows don't use actual bowling balls when they go bowling. They each take a number (in the range 0..99), though, and line up in a standard bowling-pin-like triangle like this:
7 3 8 8 1 0 2 7 4 4 4 5 2 6 5
Then the other cows traverse the triangle starting from its tip and moving "down" to one of the two diagonally adjacent cows until the "bottom" row is reached. The cow's score is the sum of the numbers of the cows visited along the way. The cow with the highest
score wins that frame.
Given a triangle with N (1 <= N <= 350) rows, determine the highest possible sum achievable.
Input
Line 1: A single integer, N
Lines 2..N+1: Line i+1 contains i space-separated integers that represent row i of the triangle.
Output
Line 1: The largest sum achievable using the traversal rules
Sample Input
5 7 3 8 8 1 0 2 7 4 4 4 5 2 6 5
Sample Output
30
Hint
Explanation of the sample:
7 * 3 8 * 8 1 0 * 2 7 4 4 * 4 5 2 6 5
The highest score is achievable by traversing the cows as shown above.
Source
USACO 2005 December Bronze
题意:
求一条路径,使从头到尾和最大。
思路:
简单动态规划。
代码:
#include <iostream> #include <cstring> #include <string> using namespace std; int num[550][550],f[550][550]; int sum; int main() { int i,j; int n; cin>>n; for(i=1;i<=n;i++) { for(j=1;j<=i;j++) cin>>num[i][j]; } for(j=1;j<=n;j++)f [j]=num [j]; for(i=n-1;i>=1;i--) { for(j=1;j<=i;j++) f[i][j]=num[i][j]+max(f[i+1][j],f[i+1][j+1]); } cout<<f[1][1]<<endl; }
相关文章推荐
- POJ 3176 Cow Bowling 动态规划
- POJ 3176 Cow Bowling 动态规划
- 【原】 POJ 3176 Cow Bowling 动态规划 解题报告
- POJ 3176(Cow Bowling )(就是简单的数塔,动态规划)
- POJ 3176 Cow Bowling 【动态规划】【水题】
- POJ3176——Cow Bowling(动态规划)
- POJ 1163 The Triangle & POJ 3176 Cow Bowling(DP动态规划)
- zoj 2625 Rearrange Them 动态规划
- acm 动态规划总结
- 【算法笔记】区域型动态规划_石子并归
- 【动态规划】不能移动的石子合并
- leetcode 64. Minimum Path Sum-最小路径和|动态规划
- leetcode 560. Subarray Sum Equals K 动态规划DP子数组求和
- 动态规划——最大子段和问题
- 动态规划(斜率优化):[CEOI2004]锯木厂选址
- 对动态规划DP的深入理解
- 动态规划-最优二分检索树
- 动态规划解决最长公共子序列和最长公共子串
- 077day(动态规划题(Zipper)的尝试)
- 动态规划(练习题目,)