字符串哈希的原理:将每段字符串化为P进制的数,赋予唯一的‘地址 ’,通过地址比较字符串,时间复杂度为O(1),如果挨个字符进行比较,时间复杂度为O(字符串长度)
#include<iostream>
using namespace std;
typedef unsigned long long ULL;
const int N = 1e5 + 10, P = 131;//P经验值131、1331
int h[N], p[N];//h数组储存以末尾字符为标志的每段字符串的特殊‘地址 ’,p储存P的幂
char str[