Lang:G++
Edit12345678910111213141516171819202122232425262728293031#include <cstdio>#include <cstdlib>#include <cstring>#include <algorithm>#include <vector>#include <list>#include <queue>using namespace std;#define MAXN 20003typedef unsigned long long ULL;ULL hhash[MAXN];ULL xp[MAXN];ULL h[MAXN];int data[MAXN];int x = 2333;int slen;bool check(int len, int k){for(int i = 0; i < slen-len+1; i++)hhash[i] = h[i]-h[i+len]*xp[len];sort(hhash, hhash+slen-len+1);int t;for(int i = 0; i < slen-len+1; i++){if(i == 0 || hhash[i] != hhash[i-1])t = 0;if(++t >= k)return true;}return false;}int main(){