为什么要写这个题的题解呢? 因为我觉得很可惜...尽管我做过类似的,类似这题 ,知道是线段树上分治跑dp,但是因为只做过一次,不敢写,因为怕bug然后调不出,事实上我又调了很久,确实菜,但是呢必须得说下次我绝对敢写. 这种题是基于线段树本身带有分治结构,对于每段来说就是先算段内贡献,然后算段外的贡献,假如你学过cdq分治就更好理解了.这是我当初学cdq分治做的视频 . 基于这些,我们令表示线段树管辖区间,到连续的子串数量是多少.然后统计技术即可,和普通线段树相比差别在于,把子树的信息整合到父亲节点. 然后并没有什么难点. code: #include <bits/stdc++.h>...