莫队算法
yashem66
长期提供绕地人造卫星清洗除尘服务。
展开
-
冲刺NOI2017 (24) A (后缀数组 回滚莫队)
题目大意给出一个长度为nn的字符串ss,提出qq个询问,对于每个询问要求回答:右端点在区间[l,r][l,r]的所有前缀,最长公共后缀最长的一对前缀的最长公共后缀的长度是多少。题解因为要在原串的前缀上分析后缀十分的别扭,所以对这个问题略作转化:将原串翻转过来,求左端点在区间[l,r][l,r]内的后缀的lcp(最长公共前缀)。同时不要忘记把询问也翻转到同样的姿势。问题已经转化为了:左端点在区间[l,原创 2017-06-22 23:04:09 · 653 阅读 · 0 评论 -
BZOJ4241 历史研究 (分块 回滚莫队-教程向)
题目大意给定一个长度为nn的序列,并提出qq个询问,每次询问要求回答区间 [l,r][l,r] 内所有的权值与其出现次数的积的最大值。题解看见这种xjb询问的题当然是要下意识地用分块来搞一搞的,又因为只有询问,且题目没有要求强制在线,所以就可以理所应当地“分块+莫队”来搞这道题了。对于这道题,莫队的加入操作是很好实现的,只要增加一下被加入区间的权值的出现次数并同时更新一下答案就可以了,但是删除操作却原创 2017-06-20 23:01:45 · 1789 阅读 · 2 评论