01 2016 档案
codeforces 501 C,D,E
摘要:C题意:给定n个点(标号0~n-1)的度数(就是与其邻接的点的个数)和所有与它邻接的点标号的异或和,求满足这些条件的树的边应该是怎么连的,将边输出出来这里可以理解成拓扑排序的方式考虑,当i度数为1的时候,那么我们必然知道 i 肯定得与s[i]相连使其剩余的异或值为0所以建立一个队列不断将度数变为1的...
阅读全文
bzoj 3172 单词 ac自动机|后缀数组
摘要:题目大意:给定n个字符串连成了一篇文章,问每个字符串在这篇文章中出现的次数,可重复覆盖这里ac自动机和后缀数组都可以做当然后缀数组很容易就解决,但是相对时间消耗高这里就只讲ac自动机了将每个字符串放入ac自动机中,这里需要记录到达每个ac自动机上的节点出现这个状态有多少次而我们添加字符串进入的时候,...
阅读全文
HDU2459 后缀数组+RMQ
摘要:题目大意:在原串中找到一个拥有连续相同子串最多的那个子串比如dababababc中的abababab有4个连续的ab,是最多的如果有同样多的输出字典序最小的那个这里用后缀数组解决问题:枚举连续子串的长度l , 那么从当前位置0出发每次递增l,拿 i 和 i+l 开头的后缀求一个前缀和val , 求解...
阅读全文
POJ 3294 二分找超过一半字符串中存在的子串
摘要:题目大意:给定n个字符串,求出现在不小于k/2个字符串中的最长子串。二分找对应子串长度的答案,将所有字符串链接成一个长字符串求后缀数组,记录每一个位置本属于第几个字符串,利用height查询的时候,根据记录的位置不断判断是否出现重复的字符串是在同一个字符串内的 1 #include 2 #in...
阅读全文
浙公网安备 33010602011771号