`

poj 3176

 
阅读更多

大致题意:

输入一个n层的三角形,第i层有i个数,求从第1层到第n层的所有路线中,权值之和最大的路线。

规定:第i层的某个数只能连线走到第i+1层中与它位置相邻的两个数中的一个。

解题方法:

用二维数组way[][]靠左存储三角形内的数据,那么连线规则变更为

way[i][j] → Way[i+1][j]

 Way[i][j] → Way[i+1][j+1]

 

注意:way[][]初始化为输入时的三角形数值,此时way[i][j]表示该点位置上的权值,没输入的位置初始化为0。

 

代码如下:

#include <iostream>
using namespace std;

const int N=360;
int wei[N][N],n;

int max(int a, int b)
{
	return a>b?a:b;
}
int main()
{
	int i,j;
	while (cin>>n)
	{
		for (i=0;i<N;i++)
			for(j=0;j<N;j++)
				wei[i][j]=0;
		for(i=1;i<=n;i++)
		{
			for(j=1;j<=i;j++)
				cin>>wei[i][j];
		}
		int max_weight=0;
		for (i=1;i<=n;i++)
		{
			for(j=1;j<=i;j++)
			{
				wei[i][j]+=max(wei[i-1][j-1],wei[i-1][j]);
				if (i==n&&max_weight<=wei[i][j])
				{
					max_weight=wei[i][j];
				}	
			}
		}
		cout<<max_weight<<endl;
	}
	return 0;
}

 

分享到:
评论

相关推荐

    POJ3176-Cow Bowling

    《POJ3176-奶牛保龄球:算法解析与编程实践》 北京大学的在线判题系统POJ(Problem Online Judge)中有一道颇受欢迎的题目——"Cow Bowling",编号为3176。这是一道涉及动态规划和概率计算的编程题目,旨在考察参赛...

    北大POJ3176-Cow Bowling

    北大POJ3176-Cow Bowling

    acm训练计划(poj的题)

    - (poj3176, poj1080, poj1159):多维状态转移方程的应用。 ### 五、组合数学 1. **排列组合基础**: - 排列、组合的计算方法。 2. **多项式与快速幂**: - 多项式的运算规则以及快速幂算法。 3. **容斥原理*...

    经典 的POJ 分类

    - POJ 3176、POJ 1080:复杂的状态空间定义与状态转移。 ### 数学问题 #### 组合数学 - **题目示例**: - POJ 3252、POJ 1850:组合数学原理的应用。 - POJ 1019、POJ 1942:组合计数问题。 #### 几何问题 - *...

    acm新手刷题攻略之poj

    - 推荐题目:[poj3176](https://vjudge.net/problem/POJ-3176)、[poj1080](https://vjudge.net/problem/POJ-1080)、[poj1159](https://vjudge.net/problem/POJ-1159) - 组合计数问题需要熟练掌握排列组合的基本...

    ACM-POJ 算法训练指南

    2. **线段交**:计算线段是否相交及交点位置(poj3176, poj1080, poj1159)。 ### 七、概率统计 1. **概率计算**:计算随机事件的概率(POJ3252, poj1850, poj1019, poj1942)。 2. **期望值**:计算期望值问题...

    POJ 分类题目

    - poj3176 - poj1080 - poj1159 - **应用场景**:适用于路径规划、编辑距离计算等问题。 #### 六、数学 **1. 组合数学** - **定义**:研究离散对象的计数方法。 - **示例题目**: - poj1809 - poj3252 - poj...

    ACM常用算法及其相应的练习题.docx

    * 最长公共子序列:poj3176, poj1080, poj1159 * 最优二分检索树问题 六、数学 * 组合数学: + 加法原理和乘法原理 + 排列组合 + 递推关系 - poj3252, poj1850, poj1019, poj1942 * 数论: + 素数与整除问题...

    ACM算法总结大全——超有用!

    3. 最长公共子序列:如poj3176、poj1080等。 4. 最优二分检索树问题:如poj1159。 六、数学 1. 组合数学:加法原理、乘法原理、排列组合和递推关系,如poj3252、poj1850等。 2. 数论:素数、整除、进制位和同余模...

    acm 分类 北大

    - 表达式类型的DP:解决具有特定形式的动态规划问题,如最长公共子序列,如POJ3176。 6. **数学** - 组合数学:涵盖加法和乘法原理、排列组合和递推关系,如POJ1850。 - 数论:素数检测、位运算和模运算,如POJ...

    北大acm试题

    poj1837和poj1276是背包问题的实例,而型如下表的简单DP问题,如poj3267、poj1836、poj1260和poj2533,以及最长公共子序列问题(如poj3176、poj1080和poj1159)都是动态规划的典型应用。 六、数学 数学在编程竞赛中...

    ACM 经验 笔记 很有用的经验指导

    - **最长公共子序列**:如 poj3176、poj1080。 6. **数学**: - **组合数学**: - 加法和乘法原理。 - 排列组合。 - 递推关系。 - **数论**: - 素数与整除问题。 - 进制位运算。 - 同余模运算。 - **...

    ACM训练方案

    2. 表达式类型的DP:如poj3176的最长公共子序列。 六、数学 1. 组合数学:加法和乘法原理,排列组合,递推关系。 2. 数论:素数、整除、进制位、同余模运算。 3. 计算方法:二分法求解单调函数问题。 七、计算几何...

    算法训练方案详解

    - **示例题目**: POJ 3267, POJ 1836, POJ 1260, POJ 2533, POJ 3176, POJ 1080, POJ 1159 - **注意事项**: 理解每种模型的状态定义和转移方程。 #### 六、数学 **1. 组合数学** - **定义**: 研究组合结构的...

    acm新手训练方案新手必备

    - POJ 3176: 编辑距离问题 - POJ 1080: 编辑距离的变种 - POJ 1159: 编辑距离的复杂案例 #### 三、组合数学 组合数学主要涉及计数组合、排列组合等问题。 - **组合数**:掌握组合数的计算公式及其应用。 - **...

    LeetCode判断字符串是否循环-Leetcode:刷!

    3176 POJ 1080 POJ 1159 POJ 2533 POJ 1836 Leetcode 70 Leetcode 309 搜索 DFS POJ 2488 POJ 3083 POJ 3009 POJ 1321 BFS POJ 3278 POJ 1426 POJ 3126 POJ 3414 POJ 2251 简单搜索技巧和剪枝 POJ 1010 :star: POJ ...

    北大POJ部分题目答案(一些基础题目)

    很多的POJ题目答案!1000~1008,1011~1014,1016,1017,1019,1028,1032,1045,1046,1047,1050,1061,1067,1068,1088,1102,1159,1163,1183,1207,1218,1226,1247,1256,1258,1298,1316,1323,...

    poj部分源码--Java

    poj平台有关数据结构题的Java源码 1159 1276 2406 2502 2509 2513 2533 2778 3176

    强大的POJ分类——各类编程简单题及其算法分类

    2. **线性DP**:包括单变量和二维DP问题,如表格形式的DP,如POJ3267、1836、1260、2533、3176、1080、1159和3176。 ### 数学 1. **组合数学**:学习加法原理、乘法原理、排列组合以及递推关系,如POJ3252、1850、...

Global site tag (gtag.js) - Google Analytics