摘要: 题意:给你一个长度为n的字符串,有q个询问,每次询问一个子串s(l,r)第k次出现的位置,若子串出现次数少于k次输出 1. 解题思路:先把SA跑出来,然后对于每次询问可以由l和rank[]找到l在所有后缀中的排名,再用两次二分求出使得LCP(L,R)包含s(l,r)的最大区间[L,R],LCP可以借 阅读全文
posted @ 2019-08-23 23:40 _Backl1ght 阅读(299) 评论(0) 推荐(0) 编辑
摘要: 题意:给定一个带权有向图,有q组询问,每次询问在有向图的所有路径中,第k小的路径权值 解题思路:因为k最大只有5e4,考虑暴力搜索出前maxk小的路径并用数组记录权值,然后就可以O(1)查询。 具体实现:暴力搜索时可以借助Dijkstra最短路的思想,即用已知的最短路更新得出新的最短路。先将所有的边 阅读全文
posted @ 2019-08-23 23:39 _Backl1ght 阅读(173) 评论(0) 推荐(0) 编辑