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

洛谷 P3370 【模板】字符串哈希

题目描述

如题,给定 N 个字符串(第 i 个字符串长度为 Mi​,字符串内包含数字、大小写字母,大小写敏感),请求出 N 个字符串中共有多少个不同的字符串。

友情提醒:如果真的想好好练习哈希的话,请自觉。

输入格式

第一行包含一个整数 N,为字符串的个数。

接下来 N 行每行包含一个字符串,为所提供的字符串。

输出格式

输出包含一行,包含一个整数,为不同的字符串个数。

输入输出样例

输入 #1复制

5 abc aaaa abc abcc 12345

输出 #1复制

4

说明/提示

数据范围

对于 30% 的数据:N≤10,Mi​≈6,Mmax​≤15。

对于 70% 的数据:N≤1000,Mi​≈100,Mmax​≤150。

对于 100% 的数据:N≤10000,Mi​≈1000,Mmax​≤1500。

样例说明

样例中第一个字符串 abc 和第三个字符串 abc 是一样的,所以所提供字符串的集合为 {aaaa,abc,abcc,12345},故共计 4 个不同的字符串。

#include<bits/stdc++.h> using namespace std; const int N=10010,P=131; int n; typedef unsigned long long ULL; ULL a[N]; ULL get_hash(string s) { ULL ret=0; for(int i=1;i<=s.size();i++) { ret=ret*P+s[i-1]; } return ret; } int main() { cin>>n; for(int i=1;i<=n;i++) { string s; cin>>s; ULL x=get_hash(s); a[i]=x; } int ret=1; sort(a+1,a+1+n); for(int i=2;i<=n;i++) { if(a[i]!=a[i-1]) ret++; } cout<<ret<<endl; return 0; }
http://www.zskr.cn/news/118730.html

相关文章:

  • 革命性Rust跨平台性能测试方案:企业级多架构性能基准实践
  • 洛谷 P10468 兔子与兔子
  • DownKyi哔哩下载姬:B站视频批量下载与格式转换完整教程
  • 5个关键策略优化ApexCharts.js数据可视化用户体验
  • unioffice终极指南:用Go语言高效处理Office文档的完整方案
  • POV-Ray 终极指南:从零开始掌握专业级射线追踪渲染
  • GLM-4.5-FP8终极指南:3550亿参数MoE大模型快速部署与实战应用
  • 专业鼠标性能测试指南:用数据优化你的操作体验
  • CPUID指令:Linux内核如何“审问“你的处理器
  • 如何快速使用Wan2GP视频生成AI:新手指南
  • llama.cpp项目KV缓存优化:从内存瓶颈到性能突破的实战指南
  • 18、系统级仿真技术详解
  • Cakebrew:macOS包管理GUI工具的终极使用指南
  • Redis中级知识点,图文并茂,面试官笑掉大牙?
  • STM32H750 SPI驱动W25Q128
  • Modded-NanoGPT能效优化:从训练加速到可持续AI的技术实践
  • 5步构建可靠消息系统:Watermill框架实战指南
  • Flutter Engine音频可视化技术深度解析与实战应用指南
  • 大模型微调迷局解析:DPO训练中的挤压效应诊断与优化实践
  • Qwen3-235B-A22B-MLX-8bit:开启智能思维双模式的革命性大语言模型
  • 终极Mac性能监控指南:MenuMeters让你的系统状态一目了然
  • ComfyUI-Manager如何选择最佳依赖方案?终极对比指南
  • Chrome扩展热重载工具:告别繁琐重启,体验高效开发
  • React Native AR相机开发终极指南:从零打造企业级增强现实应用
  • 文档解析实战指南:Dolphin多模态PDF处理从入门到精通
  • 摄像头对焦小知识:前置、后置摄像头与 AF/MF 的那些事
  • 年轻群体更喜欢EmotiVoice的哪种情感模式?
  • 哔哩下载姬DownKyi:高效管理B站视频资源的完整教程
  • 5大技术突破:芋道源码如何通过协议集成实现企业级AI能力升级
  • 光线追踪纹理压缩实战:从内存爆满到流畅渲染的终极优化指南