81: luogu3370 hash
2024-10-21 05:57:50
hash 模板题
#include <bits/stdc++.h> using namespace std; #define ULL unsigned long long
const ULL Mod = 212370440130137957ll; char c[];
int pri = ;
ULL number[]; inline ULL Hash1(char s[]) {
int Len = strlen(s);
ULL base = , ret = ;
for(int i = ; i < Len; i ++) ret = (ret * base + s[i]) % Mod + pri;
return ret;
} inline ULL Hash2(char s[]) {
int Len = strlen(s);
ULL base = , ret = ;
for(int i = ; i < Len; i ++) ret = (ret * base + (ULL)s[i]) % Mod + pri;
return ret;
} inline ULL Hash3(char s[]) {
int Len = strlen(s);
ULL base = , ret = ;
for(int i = ; i < Len; i ++) ret = (ret * base + s[i]) % Mod + pri;
return ret;
} int main() {
int n;
cin >> n;
for(int i = ; i <= n; i ++) {
scanf("%s", c);
ULL Num = (((Hash1(c) * ) % Mod * Hash2(c) * % Mod) * Hash3(c)) % Mod;
number[i] = Num;
}
sort(number + , number + n + );
int tot = ;
for(int i = ; i < n; i ++) if(number[i] != number[i + ]) tot ++;
cout << tot; return ;
}
最新文章
- [LeetCode] Partition Equal Subset Sum 相同子集和分割
- 纯灌水Linus主义
- IOS CoreText.framework --- 行 CTLineRef
- java并发:中断一个正在运行的线程
- Spring高级事务管理难点剖析
- Android开发手记(15) 拨打电话和收发短信
- windows puppet manifests 文件维护
- 手工部署Sqlserver CLR程序集
- H5获取的经纬度,该怎么在百度地图中查看?
- ASP.NET MVC 项目直接预览PDF文件
- python random从集合中随机选择元素
- Html细线表格的实现 打印边框设置
- DELL XPS 13 9350 装Win7系统(坑爹)
- 调用android的getColor()方法出现 java.lang.NoSuchMethodError: android.content.res.Resources.getColor
- BZOJ4008 : [HNOI2015]亚瑟王(期望dp)
- [NOI2017]泳池——概率DP+线性递推
- 黑域,黑阈 Permission denied
- 经典论文翻译导读之《Finding a needle in Haystack: Facebook’s photo storage》
- Codeforces 2B The least round way(dp求最小末尾0)
- (5)调度器(scheduler)