字符串哈希表定义
作者:
cocoonnnp
,
2022-03-17 11:35:08
,
所有人可见
,
阅读 242
字符串哈希表定义
//字符串哈希表定义:https://www.acwing.com/video/44/
#include <iostream>
#include <cstring>
//#include <cstdio>
using namespace std;
const int N=1000010;
const int base=131;//固定进制数
typedef unsigned long long ULL;
//字符串 哈希表下标都从1开始
ULL h[N];
char str[N];
int main(){
scanf("%s",str+1);
int len=strlen(str+1);
for(int i=1;i<=len;i++)
{
h[i]=h[i-1]*base + str[i]-'a'+1;
}
for(int i=1;i<=len;i++) printf("%llu\n",h[i]);//cout<<h[i]<<endl;
return 0;
}