摘要: 题意 "题目链接" Sol 后缀自动机+线段树 还是考虑通过每个前缀的后缀更新答案,首先出现次数只有一次,说明只有$right$集合大小为$1$的状态能对答案产生影响 设其结束位置为$t$,代表的最短/最长后缀的位置为$l, r$(l在r的右边) 那么对于区间$r l$内的$x$位置,可以用$t x 阅读全文
posted @ 2018-12-14 16:50 自为风月马前卒 阅读(346) 评论(0) 推荐(0) 编辑
摘要: 题意 "题目链接" Sol 前面的可以直接算 然后原串翻转过来,这时候变成了求任意两个前缀的最长公共后缀,显然这个值应该是$len[lca]$,求出$siz$乱搞一下 cpp include define int long long define LL long long using namespa 阅读全文
posted @ 2018-12-14 13:02 自为风月马前卒 阅读(304) 评论(0) 推荐(0) 编辑
摘要: 题意 "题目链接" Sol 直接在SAM上乱搞 枚举前缀,用SAM统计可以匹配的后缀,具体在匹配的时候维护和当前节点能匹配的最大值 然后再把parent树上的点的贡献也统计上,~~这部分可以爆跳parent树~~(假的,因为这题数据随机),也可以直接树形dp一波记下每个点被统计的次数 cpp inc 阅读全文
posted @ 2018-12-14 10:57 自为风月马前卒 阅读(314) 评论(0) 推荐(0) 编辑

Contact with me