Given a non-empty tree with root R, and with weight Wi assigned to each tree node Ti. The weight of a path from R to L is defined to be the sum of the weights of all the nodes along the path from R to any leaf node L.
Now given any weighted tree, you are supposed to find all the paths with their weights equal to a given number. For example, let's consider the tree showed in the following figure: for each node, the upper number is the node ID which is a two-digit number, and the lower number is the weight of that node. Suppose that the given number is 24, then there exists 4 different paths which have the same given weight: {10 5 2 7}, {10 4 10}, {10 3 3 6 2} and {10 3 3 6 2}, which correspond to the red edges in the figure.
Each input file contains one test case. Each case starts with a line containing 0 ID K ID[1] ID[2] ... ID[K] where For each test case, print all the paths with weight S in non-increasing order. Each path occupies a line with printed weights from the root to the leaf in order. All the numbers must be separated by a space with no extra space at the end of the line. Note: sequence {A1,A2,⋯,An} is said to be greater than sequence {B1,B2,⋯,Bm} if there exists 1≤k 20 9 24 10 5 2 7 从树的根开始,走到底部,如果路径上所有节点的权重加起来刚好等于S,则输出这条路径。 题目意思很清晰,所以只要dfs()这颗树,把节点的权重加一下就可以解决这道题的大部分测试点了。主要的问题在于要求输出的顺序是先输出节点权重大的,再输出节点权重小的。我利用了vector 最后直接输出节点权重即可。 1. 最后一个测试点是输出的顺序不符合题意。如果你对路径的排序是一层一层的排序的话(就是直接对节点进行sort),最后输出的结果就会有错,一定要把所有可行的路径都存储进一个结构中,在对他们一起排序才行。 例如下面这颗树: 如果只是对层来排序的话,输出就是 10 7 2 8 10 7 8 2 实际上我们需要的输出是 10 7 8 2 10 7 2 8
ID is a two-digit number representing a given non-leaf node, K is the number of its children, followed by a sequence of two-digit ID's of its children. For the sake of simplicity, let us fix the root ID to be 00.Output Specification:
Sample Input:
10 2 4 3 5 10 2 18 9 7 2 2 1 3 12 1 8 6 2 2
00 4 01 02 03 04
02 1 05
04 2 06 07
03 3 11 12 13
06 1 09
07 2 08 10
16 1 15
13 3 14 16 17
17 2 18 19Sample Output:
10 4 10
10 3 3 6 2
10 3 3 6 2解题思路:
易错点:

代码:
hgame week3 WEB和MISC全wp
<哈希及模拟实现>——《C++高阶》
Shell基础练习2
初识Java 13-1 异常
PHP 服装销售管理系统mysql数据库web结构layUI布局apache计算机软件工程网页wamp
whisperspeech 英文TTS的实现
什么牌子的led台灯质量好?五款Led护眼台灯推荐
解析虚拟文件系统的调用
HACK ME PLEASE: 1实战演练
SQLcl 中 c/old/new 替换变量为何失效?先定位再替换
不让模型写作文,直接从它脑子里读答案:Jev 决策在 .NET 的两条路线
Halo插件:支持GitHub的图床附件策略
电视投屏界的“一股清流”!SimpleTVCast 6.0.0-beta 抢先体验:无需TV端App,界面大换血!✨
华三VXLAN集中式网关实战指南:Spine多活网关 + 双活接入(M-LAG)
软件更好写之后口碑会更重要
大 O、大 Omega、大 Theta 的区别,O(n) 复杂度是什么意思
Java标签跳转:一个鲜为人知但却很实用的小技巧
多智能体系统论文速读