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