字符串哈希
题目链接:字符串哈希
题目描述
解题思路
从左到右,找到替换。
code
#include<iostream>
#include<cstdio>
#include<string>
#include<cstring>
using namespace std;
int n,ans;
string hs[10010];
int hah(string c)
{
int s=0;
for(int i=0;i<=c.size();i++)
s+=c[i];
s%=10000;
while(hs[s]!=c&&hs[s].size()>0)
s=(s+1)%10000;
if(hs[s]==c)
return 0;
hs[s]=c;
return 1;
}
int main()
{
cin>>n;
for(int i=1;i<=n;i++)
{
string c;
cin>>c;
if(hah(c))
ans++;
}
cout<<ans<<endl;
}