标签:标号 frac sum xF SP1480 维护 Euler
《四重计树法》
- 有标号无根
prufer 序列,\(n^{n-2}\)。
- 有标号有根
prufer 序列,\(n^{n-1}\)。
- 无标号有根
设 \(f[n]\) 为 \(n\) 个节点时的答案,有:
\[f[n]=\sum_{k=1}^n\frac{[\sum_{i=1}^ks_i=n-1]\prod_{i=1}^kf[s_i]}{k!} \]人话就是 \(F(x)=x\exp(F(x))\)。
考虑求导列出 ODE 然后 \(O(n^2)\)。
\[(x\sum_{i=0}\frac{F^i(x)}{i!})' \]\[e^{F(x)}+x\sum_{i=0}\frac{iF'(x)F^{i-1}(x)}{i!} \]\[e^{F(x)}+xF'(x)\sum_{i=1}\frac{F^{i-1}(x)}{(i-1)!} \]\[e^{F(x)}+xF'(x)e^{F(x)} \]\[F'(x)=e^{F(x)}+F'(x)F(x) \]\[F(x)=\frac{F'(x)-e^{F(x)}}{F'(x)} \]只要维护出了 \(F(x)\),就可以维护出 \(e^{F(x)},F'(x)\) 和 \(\frac{1}{F'(x)}\),进而计算下一项,复杂度 \(O(n^2)\)。
- 无标号无根
同样的,我们有 \(F(x)=x\times Euler(x)\)。
展开:
\[F(x)=x\sum_{i=0}\frac{F(x^i)}{i} \]求导:
\[F'(x)=Euler(F(x))+x\sum_{i=0}\frac{ix^{i-1}F'(x^i)}{i} \]\[F'(x)=Euler(F(x))+\sum_{i=0}x^iF(x^i) \]\[F'(x)=\frac{F(x)}{x}+\sum_{i=0}x^iF(x^i) \]\[xF'(x)=F(x)+x\sum_{i=0}x^iF(x^i) \]\[F(x)=xF'(x)-x\sum_{i=0}^nx^iF(x^i) \]同样的,我们能够动态维护 \(F(x)\) 就可以维护右边那一车东西,复杂度仍然是 \(O(n^2)\) 的。
标签:标号,frac,sum,xF,SP1480,维护,Euler 来源: https://www.cnblogs.com/lmpp/p/15956548.html
本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享; 2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关; 3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关; 4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除; 5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。