大佬们可不可以解释一下求字串出现次数的代码
for(int i=1;i<=cnt;i++)c[l[i]]++; for(int i=1;i<=cnt;i++)c[i]+=c[i-1]; for(int i=1;i<=cnt;i++)a[c[l[i]]--]=i; for(int i=cnt;i;i--){ int p=a[i]; size[fa[p]]+=size[p]; if(size[p]>1)ans=max(ans,1LL*size[p]*l[p]); }