标题:令我郁闷的一道题
只看楼主
长安之星
Rank: 1
等 级:新手上路
帖 子:17
专家分:0
注 册:2006-10-27
 问题点数:0 回复次数:3 
令我郁闷的一道题

编程爱好者acm的一个题目:
Number Triangle
Consider the number triangle shown below. Write a program that calculates the highest sum of numbers that can be passed on a route that starts at the top and ends somewhere on the base. Each step can go either diagonally down to the left or diagonally down to the right.如输入
7
3 8
8 1 0
2 7 4 4
4 5 2 6 5
结果为30
说明:从第一行开始,加上下一行与他相邻的数(选一个),输出最后得出的和最大的情况。
如上面的列子:结果为7+3+8+7+5=30。
实在想不出来了才想到你们,,哎~~~
祝论坛越来越好~~~~~


搜索更多相关主题的帖子: 编程 triangle highest numbers 
2006-11-11 19:34
song4
Rank: 7Rank: 7Rank: 7
等 级:贵宾
威 望:38
帖 子:1533
专家分:4
注 册:2006-3-25
得分:0 
穷举吧

嵌入式 ARM 单片机 驱动 RT操作系统 J2ME LINUX  Symbian C C++ 数据结构 JAVA Oracle 设计模式 软件工程 JSP
2006-11-11 19:37
song4
Rank: 7Rank: 7Rank: 7
等 级:贵宾
威 望:38
帖 子:1533
专家分:4
注 册:2006-3-25
得分:0 
有点象最短路径
用图存储他们

嵌入式 ARM 单片机 驱动 RT操作系统 J2ME LINUX  Symbian C C++ 数据结构 JAVA Oracle 设计模式 软件工程 JSP
2006-11-11 19:38
kai
Rank: 16Rank: 16Rank: 16Rank: 16
等 级:版主
威 望:52
帖 子:3450
专家分:59
注 册:2004-4-25
得分:0 
根据规则找路径(每条符合条件的路径都有其相应的sum), 如果把路径看作一个object, 将其放入一个容器如 vector , 最后做一下统计, 将路径输出。

程序的开始是初始化, 也就是建立那个 tree 结构的 数据块, 并对每个节点初始化, 即赋初值。
程序的第二步便是利用深度搜索找出符合条件的路径, 并建立 route object, 计算该 route 的 sum (sum 为 route 的一个成员变量),
将该route 放入一个容器变量
程序的第三步, 对容器中的所有route object 排序( 根据 sum)
程序的第四步, 拿出那个 具有 sum 最大的 route. 并打印 该 route (这意味着你应该在 Route class 中定义一个 print 函数)。

you see, it is not difficult. Viel Spass!

自由,民主,平等,博爱,进步.
中华民国,我的祖国,中华民国万岁!中华民国加油!
本人自愿加入中国国民党,为人的自由性,独立性和平等性而奋斗!
2006-11-12 01:10



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-102296-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.355801 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved