www 被大佬|

wscqwq

园龄:2年粉丝:2关注:3

括号树

我们首先考虑是一个序列的情况下,怎么求解这个问题。

f[i] 表示前 i 个字符的方案数。

首先,不匹配当前字符,从 f[i1]

若当前字符是右括号,那么可以唯一确定它对应的左括号,设位置为 j

由于串必须要连续,所以必须保证以 j1 结尾,可以用 f[j1]f[j2] 求解,类似于一个容斥的思想。

最后,由于可以直接放弃掉前面的,所以 +1

考虑树的情况,只需要 i1pi,左括号指向的就是一个节点编号,若设为 j,则 f[j1]f[j2]f[pj]f[ppj]。再弄一个栈模拟序列的情况。

本文作者:wscqwq

本文链接:https://www.cnblogs.com/wscqwq/p/17709543.html

版权声明:本作品采用知识共享署名-非商业性使用-禁止演绎 2.5 中国大陆许可协议进行许可。

posted @   wscqwq  阅读(8)  评论(0编辑  收藏  举报
点击右上角即可分享
微信分享提示
评论
收藏
关注
推荐
深色
回顶
收起