BZOJ2803[Poi2012]Prefixuffix——hash】的更多相关文章

题目描述 对于两个串S1.S2,如果能够将S1的一个后缀移动到开头后变成S2,就称S1和S2循环相同.例如串ababba和串abbaab是循环相同的.给出一个长度为n的串S,求满足下面条件的最大的L:1. L<=n/22. S的L前缀和S的L后缀是循环相同的. 输入 第一行一个正整数n (n<=1,000,000).第二行n个小写英文字母,表示串S. 输出 一个整数,表示最大的L. 样例输入 15 ababbabababbaab 样例输出 6   假设两个串是循环同构的,那么这两个串可以表示成…
2803: [Poi2012]Prefixuffix Time Limit: 10 Sec  Memory Limit: 64 MBSubmit: 219  Solved: 95[Submit][Status][Discuss] Description 对于两个串S1.S2,如果能够将S1的一个后缀移动到开头后变成S2,就称S1和S2循环相同.例如串ababba和串abbaab是循环相同的.给出一个长度为n的串S,求满足下面条件的最大的L:1. L<=n/22. S的L前缀和S的L后缀是循环相同…
[BZOJ2803][Poi2012]Prefixuffix Description 对于两个串S1.S2,如果能够将S1的一个后缀移动到开头后变成S2,就称S1和S2循环相同.例如串ababba和串abbaab是循环相同的.给出一个长度为n的串S,求满足下面条件的最大的L:1. L<=n/22. S的L前缀和S的L后缀是循环相同的. Input 第一行一个正整数n (n<=1,000,000).第二行n个小写英文字母,表示串S. Output 一个整数,表示最大的L. Sample Inpu…
打cf的时候遇到的问题,clairs告诉我这是POI2012 的原题..原谅我菜没写过..于是拐过来写这道题并且学了下string hash.   字符串hash基于Rabin-Karp算法,并且对于各种长度子串的匹配是常数的.具体做法看代码就明白了.然后如果单hash没发过.那就试试双hash把.如果还不行那就三hash以此类推..一般到双hash就基本不会出错.你的hash的mod值要尽量分开和是素数就对了. 这种方法实在是神,当数据过大时才会可能出错2333很适合竞赛. 附加一个类似双ha…
题目大意 bzoj 2803 对于两个串S1.S2,如果能够将S1的一个后缀移动到开头后变成S2,就称S1和S2循环相同.例如串ababba和串abbaab是循环相同的. 给出一个长度为n的串S,求满足下面条件的最大的L: \(L\le \frac n 2\) S的L前缀和S的L后缀是循环相同的. \(n\le 1,000,000\) 分析 题意相当于找一段前缀=后缀(1) 删掉这两段后再找一段前缀=后缀(2) 长度和就是答案了 其中(1)部分随便搞\(O(n)\) \(hsh\)扫过去就好了…
POI2012题解 这次的完整的\(17\)道题哟. [BZOJ2788][Poi2012]Festival 很显然可以差分约束建图.这里问的是变量最多有多少种不同的取值. 我们知道,在同一个强连通分量中的变量的相对大小是限制死了的,即这个强连通分量中的最大值减去最小值不为\(\inf\),而这个区间中的所有数一定都可以被取到(因为这里的边权只有\(0,\pm1\)嘛),所以一个强连通分量对答案的贡献是这个强连通分量中的最长路\(+1\).对于不在同一个强连通分量中的变量,其相对大小不受限制,取…
Search GO 说明:输入题号直接进入相应题目,如需搜索含数字的题目,请在关键词前加单引号 Problem ID Title Source AC Submit Y 1000 A+B Problem 10983 18765 Y 1036 [ZJOI2008]树的统计Count 5293 13132 Y 1588 [HNOI2002]营业额统计 5056 13607 1001 [BeiJing2006]狼抓兔子 4526 18386 Y 2002 [Hnoi2010]Bounce 弹飞绵羊 43…
转载请注明出处:http://www.cnblogs.com/TSHugh/p/8858805.html Prepared: (无notes的波兰题目的notes见我的波兰题目补全计划)BZOJ #3831.[Poi2014]Little BirdBZOJ #2091.[Poi2010]The Minima GameBZOJ #4385.[POI2015]Wilcze dołyBZOJ #4379.[POI2015]Modernizacja autostradyBZOJ #3830.[Poi20…
...字符串hash. 假如长度x是一个循环节, 那么对于任意n(x | n)也是一个循环节. 设当前询问区间[l, r]长度为len = ∏piai, 最终答案ans = ∏piai' ,我们只需枚举len的质因数来确定ai'即可 #include<bits/stdc++.h> using namespace std; typedef unsigned long long ull; const int maxn = 500009; const ull P = 1000173169; char…
2795: [Poi2012]A Horrible Poem Time Limit: 50 Sec  Memory Limit: 128 MBSubmit: 640  Solved: 322[Submit][Status][Discuss] Description 给出一个由小写英文字母组成的字符串S,再给出q个询问,要求回答S某个子串的最短循环节.如果字符串B是字符串A的循环节,那么A可以由B重复若干次得到. Input 第一行一个正整数n (n<=500,000),表示S的长度.第二行n个小…