记录编号 |
229404 |
评测结果 |
AAAAAAAAAA |
题目名称 |
字符串哈希 |
最终得分 |
100 |
用户昵称 |
粘粘自喜 |
是否通过 |
通过 |
代码语言 |
C++ |
运行时间 |
0.462 s |
提交时间 |
2016-02-20 09:40:23 |
内存使用 |
0.28 MiB |
显示代码纯文本
#include<iostream>
#include<cstdio>
#include<cstring>
using namespace std;
int seed;
int hash;
int main()
{
freopen("stringhash.in","r",stdin);
freopen("stringhash.out","w",stdout);
string s;
int N;
int num;
cin>>N;
while(N--)
{
hash=0;
cin>>num;
if(num!=0) cin>>s;
cin>>seed;
for(int i=0;i<num;i++)
hash=(hash*seed+(int)s[i])&2147483647;
if(num==0) cout<<"0"<<endl;
else cout<<hash<<endl;
}
return 0;
}