CarrerCup-多叉树上的最长连续路径

本文介绍了如何利用树形动态规划解决CarrerCup上的一道问题,即在多叉树中寻找最长的连续整数序列。通过为每个节点设置两个状态,分别表示以该节点为起点和以该节点后代为起点的最长路径长度,可以找到最长路径的起点和长度。最终,通过遍历节点的状态,可以确定整个最长连续路径。
摘要由CSDN通过智能技术生成

今天在CarrerCup上看到了一个问题,好像还没有好的答复,感觉可以用树形DP来做。

题目连接:http://www.careercup.com/question?id=6285363834257408

问题原文:in a tree any root can have any number of children. Every node has an integer value. Find the maximum length on consecutive number sequence anywhere in the tree. For example if root is 2 and one child is 3, its child is 4 its child is 6 then max length will be 3. I was able to write the code the find of one sequence but when one sequence ends and other starts I was not able to handle that case. I think its hard to do by recursion. Is there any other trick or algorithm for this??

问题翻译:在一颗多叉树上,每个节点都有一个整数值,找到一条最长的路径,路径上的节点整数值连续,路径可以从任意节点开始

分析:如果路径指的都是从父节点到子孙节点,则我们可以用树形DP来做,不妨假设对每个节点都有一个标号(如果标号不是天然存在,则一次DFS可以完成),每个

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值