当前位置:网站首页>POJ 3176 cow bowling (DP | memory search)
POJ 3176 cow bowling (DP | memory search)
2022-07-05 11:28:00 【Full stack programmer webmaster】
Cow Bowling
Time Limit: 1000MS | Memory Limit: 65536K | |
---|---|---|
Total Submissions: 14210 | Accepted: 9432 |
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
Number triangle problem .. Able to sit from bottom to top dp dp[i][j]=ma[i][j]+max(dp[i+1][j],dp[i+1][j+1])
Giant water .. Think of my ignorant brush six months ago dp I don't know anything .. Ah What a sad story ..
#include <algorithm>
#include <iostream>
#include <cstring>
#include <cstdlib>
#include <string>
#include <cctype>
#include <vector>
#include <cstdio>
#include <cmath>
#include <queue>
#include <stack>
#include <map>
#include <set>
#define ll long long
#define maxn 360
#define pp pair<int,int>
#define INF 0x3f3f3f3f
#define max(x,y) ( ((x) > (y)) ? (x) : (y) )
#define min(x,y) ( ((x) > (y)) ? (y) : (x) )
using namespace std;
int n,dp[maxn][maxn],ma[maxn][maxn];
void solve()
{
for(int i=0;i<n;i++)
dp[n-1][i]=ma[n-1][i];
for(int i=n-2;i>=0;i--)
for(int j=0;j<=i;j++)
dp[i][j]=max(ma[i][j]+dp[i+1][j],ma[i][j]+dp[i+1][j+1]);
printf("%d\n",dp[0][0]);
}
int main()
{
while(~scanf("%d",&n))
{
for(int i=0;i<n;i++)
for(int j=0;j<=i;j++)
scanf("%d",&ma[i][j]);
memset(dp,0,sizeof(dp));
solve();
}
return 0;
}
It can also be memorized from top to bottom Search for .. Then the meaning of the state array is almost the same .. Personally, I think search is easier to write ...
#include <algorithm>
#include <iostream>
#include <cstring>
#include <cstdlib>
#include <string>
#include <cctype>
#include <vector>
#include <cstdio>
#include <cmath>
#include <queue>
#include <stack>
#include <map>
#include <set>
#define ll long long
#define maxn 360
#define pp pair<int,int>
#define INF 0x3f3f3f3f
#define max(x,y) ( ((x) > (y)) ? (x) : (y) )
#define min(x,y) ( ((x) > (y)) ? (y) : (x) )
using namespace std;
int n,dp[maxn][maxn],ma[maxn][maxn];
int dfs(int x,int y)
{
if(x==n-1)return ma[x][y];
if(dp[x][y]>=0)return dp[x][y];
dp[x][y]=0;
dp[x][y]+=(ma[x][y]+max(dfs(x+1,y),dfs(x+1,y+1)));
return dp[x][y];
}
int main()
{
while(~scanf("%d",&n))
{
for(int i=0;i<n;i++)
for(int j=0;j<=i;j++)
scanf("%d",&ma[i][j]);
memset(dp,-1,sizeof(dp));
printf("%d\n",dfs(0,0));
}
return 0;
}
Publisher : Full stack programmer stack length , Reprint please indicate the source :https://javaforall.cn/109498.html Link to the original text :https://javaforall.cn
边栏推荐
- What about SSL certificate errors? Solutions to common SSL certificate errors in browsers
- DDRx寻址原理
- Solve the problem of slow access to foreign public static resources
- Huawei equipment configures channel switching services without interruption
- 【DNS】“Can‘t resolve host“ as non-root user, but works fine as root
- 力扣(LeetCode)185. 部门工资前三高的所有员工(2022.07.04)
- Leetcode 185 All employees with the top three highest wages in the Department (July 4, 2022)
- [there may be no default font]warning: imagettfbbox() [function.imagettfbbox]: invalid font filename
- 【爬虫】charles unknown错误
- [office] eight usages of if function in Excel
猜你喜欢
Detailed explanation of MATLAB cov function
[crawler] Charles unknown error
Harbor image warehouse construction
COMSOL--三维随便画--扫掠
如何让全彩LED显示屏更加节能环保
如何将 DevSecOps 引入企业?
中非 钻石副石怎么镶嵌,才能既安全又好看?
数据库三大范式
不要再说微服务可以解决一切问题了!
Wechat nucleic acid detection appointment applet system graduation design completion (8) graduation design thesis template
随机推荐
COMSOL -- 3D casual painting -- sweeping
[crawler] Charles unknown error
[advertising system] incremental training & feature access / feature elimination
高校毕业求职难?“百日千万”网络招聘活动解决你的难题
Repair animation 1K to 8K
力扣(LeetCode)185. 部门工资前三高的所有员工(2022.07.04)
跨境电商是啥意思?主要是做什么的?业务模式有哪些?
Characteristics and electrical parameters of DDR4
使用GBase 8c数据库过程中报错:80000305,Host ips belong to different cluster ,怎么解决?
Prevent browser backward operation
居家办公那些事|社区征文
R3Live系列学习(四)R2Live源码阅读(2)
龙蜥社区第九次运营委员会会议顺利召开
uboot的启动流程:
Web API配置自定义路由
Summary of websites of app stores / APP markets
Summary of thread and thread synchronization under window
分类TAB商品流多目标排序模型的演进
Three paradigms of database
Unity Xlua MonoProxy Mono代理类