当前位置: 首页 > news >正文

字符串哈希模板

bool isprime(int n) {if (n <= 1) {return false;}for (int i = 2; i * i <= n; i++) {if (n % i == 0) {return false;}}return true;
}
int findPrime(int n) {while (!isprime(n)) {n++;}return n;
}void slove(){mt19937 rng(chrono::steady_clock::now().time_since_epoch().count());const int P = findPrime(rng() % 900000000 + 100000005);string s;cin>>s;int n=s.size();s='.'+s;vector<int> h(n + 3,0), p(n + 3,0);p[0]=1;for(int i=1;i<=n;i++){p[i]=p[i-1]*10LL%P;//预处理过程h[i]=(h[i-1]*10LL+s[i]-'a')%P;//计算字符串的哈希值}auto get = [&](int l, int r) {return (h[r]+1LL*(P-h[l-1])*p[r-l+1])%P;    };
}
http://www.jsqmd.com/news/2569/

相关文章:

  • Markdown基本与阿法
  • 一例电动车充电器防反接电路分析
  • isEmpty/isNotEmpty/isNotBlank/isBlank-isAnyEmpty/isNoneEmpty/isAnyBlank/isNoneBlank
  • NetCore+Web客户端实现gRPC实时推送
  • 个人项目作业
  • 软工第二次作业--王腾
  • 牛客周赛 Round 110 E,F题解
  • 第5章:路由(Routing)与直连交换机(Direct Exchange)
  • 搜索百科(4):OpenSearch — 开源搜索的新选择
  • JAVA的计算方式
  • 安装 elasticsearch-9.1.4 - 集群 和 kibana-9.1.4
  • 反码 原码 补码
  • 线性结构常见应用之栈[基于郝斌课程]
  • 实测对比:权威榜单之公众号排版Top 5(含效果对比与适用建议)
  • go的泛型
  • 原码补码反码
  • lc1034-边界着色
  • 【汽车电子】汽车功能安全标准 ISO 26262
  • ISO 26262的不同安全等级:ASIL-D ASIL-C ASIL-B ASIL-A
  • C#学习1
  • 02020405 EF Core基础05-EF Core反向工程、EF Core和ADO.NET Core的联系、EF Core无法做到的事情
  • 02020406 EF Core基础06-EF Core生成的SQL
  • Gemini-2.5-Flash-Image-Preview 与 GPT-4o 图像生成能力技术差异解析​ - 教程
  • 鸿蒙ArkTS Canvas实战:转盘抽奖程序开发教程(基础到进阶) - 指南
  • 新学期每日总结(第2天)
  • 在CodeBolcks下wxSmith的C++编程教程——使用菜单和组件
  • US$128 Yanhua Mini ACDP Module6 MQB/MMC Instrument with Adapters
  • 软工第一次编程
  • jpegdump
  • 从软件开发公司到用户体验设计公司:如何实现全链路数字化产品服务