摘要:
"传送门" 解题思路 $T=0$时就和 "SP7258" 一样,$T=1$时其实也差不多,只不过要把每个点原来是$1$的权值改为$Right$集合的大小。 代码 cpp include include include include using namespace std; const int MA 阅读全文
摘要:
"传送门" 解题思路 首先建$sam$,然后在拓扑序上$dp$一下,把每个点的路径数算出来,然后统计答案时就在自动机上$dfs$一下,仿照平衡树那样找第$k$小。 代码 cpp include include include include using namespace std; const in 阅读全文
摘要:
"传送门" 解题思路 首先建出$sam$,然后把$siz$集合通过拓扑排序算出来。对于每个点只更新它的$maxlen$,然后再从大到小$dp$一次就行了。因为$f[maxlen 1] =f[maxlen]$这个性质。 代码 cpp include include include include us 阅读全文