有关Polya定理的牛顿迭代:LOJ6538 烷基计数 加强版 加强版

似乎论文哥觉得这没有必要专门写个题解来提示?那我来吧(

在一类用到 Polya 计数定理的生成函数求解时,我们会遇到一些带入了 A ( z k ) A(z^k) A(zk) 这样的式子,就比如这题可以列出这个方程:

A ( z ) = 1 + z A ( z ) 3 + 3 A ( z 2 ) A ( z ) + 2 A ( z 3 ) 6 A(z)=1+z\frac{A(z)^3+3A(z^2)A(z)+2A(z^3)}6 A(z)=1+z6A(z)3+3A(z2)A(z)+2A(z3)

当然分治 NTT 肯定是可以做的,那么可不可以牛顿迭代呢?

当然是可以的,说起来其实也很简单,当我们要从 ( m o d z n ) \pmod {z^n} (modzn) 的解扩展到 ( m o d z 2 n ) \pmod {z^{2n}} (modz2n) 的时候,在这个方程里 z A ( z 2 ) zA(z^2) zA(z2) 等等的系数其实已经都求出来了,所以把它当成一个常量就行了……总之写成 B = A ( z 2 ) , C = A ( z 3 ) B=A(z^2),C=A(z^3) B=A(z2),C=A(z3),这样是不是顺眼多了:

A ( z ) = 1 + z A 3 + 3 B A + 2 C 6 A(z)=1+z\frac{A^3+3BA+2C}6 A(z)=1+z6A3+3BA+2C

正常的牛顿迭代就可以了。代码

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
George Polya的《如何解题》是一本经典的数学解题方法指导书。它提供了一种通用的解题思路,适用于各种学科和问题类型。以下是如何运用Polya的解题方法的几个关键步骤: 第一步:理解问题 理解问题是解决问题的第一步。在这一步中,我们需要仔细阅读问题陈述,确保我们理解了问题的要求和限制。为了更好地理解问题,可以尝试回答一些问题,如问题的目标是什么?问题中给出了哪些信息?有哪些未知数?等等。 第二步:制定计划 在理解问题后,需要制定一个解决问题的计划。这个计划可以是找到相似问题的解决方法,或者是使用类似的方法来解决问题。在这一步中,我们可以思考一些问题,如是否可以将问题简化为更简单的形式?是否可以运用已有的数学定理或公式?等等。 第三步:实施计划 在制定好解决问题的计划后,我们需要实施这个计划。这意味着我们需要根据计划采取行动,应用合适的方法和技巧来解决问题。在这一步中,我们需要遵循所采取的方法的步骤,并确保每一步都正确地实施。 第四步:回顾和扩展 在解决问题后,我们应该回顾我们的解决方法,并检查解决过程中是否有错误或遗漏。同时,我们也可以思考一些问题,如是否有其他方法可以解决这个问题?是否可以将解决方法用于其他类似的问题?等等。 以上就是使用Polya的解题方法的主要步骤。这种方法主张通过具体的实践和练习来提高解决问题的能力,强调解决问题的过程和思考。通过不断使用和学习这种方法,我们可以培养出良好的解题思维和技巧,提高解决问题的效率和准确性。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值