ToB企服应用市场:ToB评测及商务社交产业平台
标题:
洛谷P3370 【模板】字符串哈希(c嘎嘎)
[打印本页]
作者:
鼠扑
时间:
2024-12-23 00:48
标题:
洛谷P3370 【模板】字符串哈希(c嘎嘎)
题目链接
:
P3370 【模板】字符串哈希 - 洛谷 | 计算机科学教诲新生态
题目难度:普及
解题思路:利用哈希算法,将每一个字符串映射到一个值域较小、可以方便比较的数,然后将哈希值存入到set(
不能有重复元素
),最后输出set的大小。
代码部分:
#include<bits/stdc++.h>//万能头文件
using namespace std;
typedef unsigned long long ULL;
const int N = 100010,P = 131;
int n;
ULL h[N];
char s[N];
set<ULL>st;
int get_hash(char s[])//哈希函数
{
h[0] = 0;
int len = strlen(s);
for(int i=0; i<len; i++)
{
h[i + 1] = h[i] * P + s[i];
}
return h[len];
}
int main()
{
ios::sync_with_stdio(0);
cin.tie(0), cout.tie(0);
cin >> n;
while(n--)//读入
{
cin >> s;
st.insert(get_hash(s));//插入set中
}
cout<<st.size();
return 0;
}
复制代码
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。
欢迎光临 ToB企服应用市场:ToB评测及商务社交产业平台 (https://dis.qidao123.com/)
Powered by Discuz! X3.4