题意:意思有一个数字串,然后问子串构成的数字,有几个模k为0,1,2...k-1的。然后要求数字不能重复,也不能有前导零
做法:
先不考虑0的问题。
(1)首先o(32n)计算出所有的模k为0,1,2...k-1的子串有几个。此时不考虑重复。即每次计算出到第i位位置,每种串有多少个。然后把第i个位置插进去就能算了。
(2)然后利用后缀数组去重。如果height[i]=j那么表示第i个串与第i-1个串有j个子串相同,把这j个串的值从之前计算出来的答案中减