LOJ #2252. 「ZJOI2017」多项式(倍增)

题目
思路简单代码毒瘤的经典简单OI题,真的只需要会倍增

题解主要就是一句话:一个 ( m o d 2 ) \pmod 2 (mod2)意义下的多项式的平方就是每一项的指数 × = 2 \times =2 ×=2,那么可以考虑使用递归形式的快速幂来利用可快速平方和乘一个原多项式的性质,又因为需求串长度 < = 18 <=18 <=18,所以我们可以考虑存长度为需求串长的所有串的个数,并在倍增时简单转移所有串的个数,并且每次删除最前面的若干字符来求在区间 [ x , n ∗ m + 1 ] [x,n*m+1] [x,nm+1]的串的个数即可得到 [ L , R ] [L,R] [L,R]的个数,最后只需要考虑一下边界情况,存最前面的 2 n + 1 2n+1 2n+1个字符即可。
。。。。。。

简单转移 − > -> >预处理即可。
边界处理 − > -> >__ i n t 128 \rm int128 int128大法好。
限制删除 − > -> > d p \rm dp dp求出倍增的每个时刻最少需要留多少位,即可保证每次都只删除

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值