【XSY2612】Comb Avoiding Trees 生成函数 多项式求逆 矩阵快速幂

该博客探讨了一种特定类型的满二叉树,即k连树,并介绍了如何计算在限制条件下不包含k连树的满二叉树的数量。博主提出使用生成函数和矩阵快速幂的方法来解决这个问题,给出了时间复杂度为O(nlogn+klogk)的解决方案,并提到存在优化到O(klogklogn)的可能性。
摘要由CSDN通过智能技术生成

题目大意

  本题的满二叉树定义为:不存在只有一个儿子的节点的二叉树。

  定义一棵满二叉树 A 包含满二叉树 B 当且经当 A 可以通过下列三种操作变成 B

  • 把一个节点的两个儿子同时删掉
  • 把一棵子树替换成根的的左子树或右子树。

      定义 k 连树为一棵只有恰好 k 个叶子的满二叉树,如果某个节点有一个右孩子,那么这个右孩子一定是一个叶子。

      对于给定的 k n ,对于所有在 1 n 之间的 i ,你需要求出所有叶子节点恰好为 i ,且不包含 k 连树的满二叉树个数。因为答案很大,请对 998244353 取模。

       n,k130000

题解

  设 fi,j i 个叶子不包含 j 连树的方案数。

  如果根的左儿子包含 i 连树那么这棵树就会包含 i+1 连树。

  如果根的右儿子包含 i 连树那么这棵树就会包含 i 连树。

  所以有:

fi,j=k
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值