UVA LA3516,分支法加上递归和递推
发布日期:2021-10-08 15:48:52
浏览次数:12
分类:技术文章
本文共 939 字,大约阅读时间需要 3 分钟。
此题采用的DP的思想,即分解为小的问题进行解决,然后又使用了递推和递归的思想,
分析:设输入序列为S,d(i,j)为子序列Si,Si+1,...,Sj对应的树的个数,则边界条件是d(i,i)=1,且Si不等于Sj时d(i,j)=0(因为起点和终点应是同一点)。在其他情况下,设第一个分支在Sk时回到树根(必须有Si=Sk),则这个分支对应的访问序列是Si+1,...,Sk-1,方案数为d(i+1,k-1);其他分支对应的访问序列为Sk,...,Sj,方案数为d(i+1,k-1);其他分支对应的访问序列为Sk,...,Sj,方案数为d(k,j)。这样,在非边界情况,递推关系为d(i,j)=sum{d(i+1,k-1)*d(k,j)|i+2<=k<=j,Si=Sk=Sj}.
代码如下:
#include#include #include #include #include #include #include #include #include #include
转载地址:https://blog.csdn.net/ONE_PIECE_HMH/article/details/45599135 如侵犯您的版权,请留言回复原文章的地址,我们会给您删除此文章,给您带来不便请您谅解!
发表评论
最新留言
网站不错 人气很旺了 加油
[***.192.178.218]2024年04月15日 21时25分35秒
关于作者
喝酒易醉,品茶养心,人生如梦,品茶悟道,何以解忧?唯有杜康!
-- 愿君每日到此一游!
推荐文章
说说如何使用 Python 在 word 中创建表格
2019-04-26
Python 基础知识考题与解答(2020 版)
2019-04-26
说说 Oracle 的 SYSDATE 函数
2019-04-26
说说 Oracle 的 NVL 与 NVL2 函数
2019-04-26
说说 TCP 协议以及三次握手流程
2019-04-26
说说 Oracle 的 TRUNC 函数
2019-04-26
系统架构设计笔记(41)—— 系统过渡计划
2019-04-26
系统架构设计笔记(42)—— 软件架构概述
2019-04-26
系统架构设计笔记(57)—— 测试自动化与面向对象的测试
2019-04-26
系统架构设计笔记(58)—— 嵌入式系统概论
2019-04-26
说说 Python 的生成器表达式
2019-04-26
说说 Activiti 中的用户与组的概念
2019-04-26
系统架构设计笔记(62)—— 嵌入式数据库管理系统
2019-04-26
系统架构设计笔记(63)—— 实时嵌入式操作系统
2019-04-26
说说如何使用 Canvas 绘制弧线与曲线
2019-04-26
系统架构设计笔记(64)—— 嵌入式系统设计
2019-04-26
系统架构设计笔记(65)—— 项目的范围、时间与成本
2019-04-26
系统架构设计笔记(66)—— 配置管理与文档管理
2019-04-26
说说 Python 元组的高级用法
2019-04-26