%E7%9A%84%E4%B8%AA%E6%95%B0%EF%BC%9A&preview=true)




注意到不相交的情况太多(我考场上写换根写疯了)
首先考虑反求问题,不相交的路径数=所有路径数-相交路径数
考虑相交有哪些情况

我们把第三种颜色互换一下就变成了第二种
我们发现绿色的链总是过黑链的
的
我们考虑枚举这个
他可以是两条只在子树内的链或者是一条子树内的链和一条从子树内(可以不进)到子树外的链
因此我们只需要算过一个点
子树内的链长为
方案数
以及从子树内(可以不进)到子树外的链长为
方案数
考虑一条链拆成两条
设从
出发,子数内单链长为
的方案
则
设从
出发,子数外单链长为
的方案
则
就是来自父亲上面的,父亲下面不过自己的
合并的时候是类似背包的,我们把前面的儿子(
)与
合并
因此%7Dsf'_%7Bx%2Ck%7D%5Ctimes%20sf_%7Bx%2Cp%2Fq-k-1%7D%7D&preview=true)
更简单
