【poj 3176】 Cow Bowling 递推dp
2016-03-30 14:42
363 查看
Cow Bowling
Time Limit: 1000MS Memory Limit: 65536K
Total Submissions: 16562 Accepted: 11036
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:
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:
4 5 2 6 5
The highest score is achievable by traversing the cows as shown above.
Source
USACO 2005 December Bronze
题目链接:http://poj.org/problem?id=3176
题目大意:数字三角形;
思路:递推
代码:
Time Limit: 1000MS Memory Limit: 65536K
Total Submissions: 16562 Accepted: 11036
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:
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
题目链接:http://poj.org/problem?id=3176
题目大意:数字三角形;
思路:递推
代码:
#include<iostream> #include<stdio.h> #include<string.h> #include<algorithm> using namespace std; int a[351][351]; int n; int dp[351][351]; int main() { 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=2;i<=n;i++) for(int j=1;j<=i;j++) { if(j!=i) dp[i][j]=max(dp[i-1][j],dp[i-1][j-1]); else dp[i][j]=dp[i-1][j-1]; dp[i][j]+=a[i][j]; } int ans=0; for(int i=1;i<=n;i++) ans=max(ans,dp [i]); printf("%d\n",ans); }
相关文章推荐
- Duplicate entry '0' for key 'PRIMARY'
- Java内存分配
- IntelliJ配置在新开窗口打开项目
- Python安装其它库的步骤和问题解决方案汇总
- 设计模式之代理模式学习demo
- poj 2251 Dungeon Master(BFS)
- TCP/IP协议原理
- c和指针详解------函数
- 显示当前日期时间
- wxWidgets的HelloWorld
- slave断电,mysql主从奔溃恢复从服务至正常
- 2016.04.16,深圳腾讯大厦,ACMUG线下活动(增加50个名额)
- 报表打印时提示页边距被设置到纸张可打印范围之外怎么办
- PHP 中获取当前url地址
- Java字符串转16 进制工具类Hex.java
- android常用工具类库整理
- 搭建struts、spring、hibernate框架的简单流程
- Mysql数据库写入数据速度优化
- Javascript——初步
- 2022