正题

评测记录:https://www.luogu.org/recordnew/lists?uid=52918&pid=P3370


大意

输出若干个字符串,求输入的字符串的总个数。


解题思路

就是用hash表就好了。


code

#include<cstdio>
#include<iostream>
#include<string>
#define p 30001
using namespace std;
int n,ans;
string s,hash[p];
int hashmath(string x)//哈希函数
{int ans=0;for (int i=0;i<x.size();i++){ans=(ans+x[i])%p;}return ans%p;
}
int locate(string x)//寻找插入位置
{int wz=hashmath(x);int i=0;while (i<p && hash[(wz+i)%p]!=x && hash[(wz+i)%p]!="")i++;return (wz+i)%p;
}
int main()
{scanf("%d",&n);for(int i=1;i<=n;i++){cin>>s;int wz=locate(s);if(hash[wz]!=s){hash[wz]=s;ans++;}//有新字符串}printf("%d",ans);
}

P3370-[模板]字符串哈希【hash】相关推荐

  1. Hash(哈希(字符串哈希))模板和做题总结(详细易懂)

    文章目录 目录 文章目录 前言: 一 Hash表 1 Hash函数的构造 2 拉链法处理hash冲突模板 3 开放寻址法处理hash冲突 4(例题).雪花雪花 二   字符串Hash O(n)+O(m ...

  2. ~~字符串哈希(数据结构)(附模板题AcWing 841 字符串哈希)

    核心思想: 将字符串看成P进制数,P的经验值是131或13331,取这两个值的冲突概率低. 小技巧: 取模的数用2^64,这样直接用unsigned long long存储,溢出的结果就是取模的结果. ...

  3. AcWing 841. 字符串哈希(字符串Hash)

    题目连接 https://www.acwing.com/problem/content/843/ 思路 我们用一个数组a记录改字符串的前缀hash值,然后和前缀和类似的方法,不过注意的是,我们在计算区 ...

  4. 【算法学习】字符串哈希(Hash)

    什么是字符串Hash 构造字符串Hash 1)自然溢出方法 2)单Hash方法 3)双Hash方法 4)三种不同的构造方法的对比 获取子串的Hash O(1) 1)例子 2)公式 具体的题目例子 1) ...

  5. 字符串哈希(魔咒词典hdu1880)

    魔咒词典(字符串哈希) 哈利波特在魔法学校的必修课之一就是学习魔咒.据说魔法世界有100000种不同的魔咒,哈利很难全部记住,但是为了对抗强敌,他必须在危急时刻能够调用任何一个需要的魔咒,所以他需要你 ...

  6. ELFhash - 优秀的字符串哈希算法

    原 ELFhash - 优秀的字符串哈希算法 分类:算法杂论算法精讲数据结构 (1424)  (2) 1.字符串哈希: 我们先从字符串哈希说起 在很多的情况下,我们有可能会获得大量的字符串,每个字符串 ...

  7. 【笔记】震惊!世上最接地气的字符串浅谈(HASH+KMP)

    震惊!世上最接地气的字符串浅谈(HASH+KMP) 笔者过于垃圾,肯定会有些错的地方,欢迎各位巨佬指正,感激不尽! 引用:LYD的蓝书,一本通,DFC的讲稿,网上各路巨佬 Luguo id: 章鱼那个 ...

  8. 中石油训练赛 - DNA(字符串哈希)

    题目链接:点击查看 题目大意:给出一串只由A,C,G,T组成的字符串,再给出一个数字k,问每个长度为k的连续子串,出现的次数最多是多少次 题目分析:O(n)哈希一下,O(n)更新一下用无序map维护的 ...

  9. HDU - 3613 Best Reward(字符串哈希)

    题目链接:点击查看 题目大意:给出一个字符串,每个字母都有一个贡献值,现在要将这个字符串拆成两个子串,如果子串是回文串的话,贡献就是其中每个字母的贡献和,现在问贡献最大为多少 题目分析:很简单的一道回 ...

  10. 【牛客 -2A】矩阵(二分,字符串哈希)

    题干: 给出一个n * m的矩阵.让你从中发现一个最大的正方形.使得这样子的正方形在矩阵中出现了至少两次.输出最大正方形的边长. 输入描述: 第一行两个整数n, m代表矩阵的长和宽: 接下来n行,每行 ...

最新文章

  1. ASCII码对应表,ASCII码值的大小顺序
  2. 获取枚举类型的 中文 描述 和值
  3. 对C语言islower、isupper、isdigit函数的测试
  4. MySQL5.1升级到5.5注意事项
  5. tanh函数matlab_MATLAB 基本函数
  6. php查询过滤字段,PHPelasticsearch过滤查询字符串搜索
  7. FCoE 不是×××
  8. sql2000 mysql 兼容_SQL Server2000如何恢复数据库
  9. 智慧北京02_初步ui框架_ 主界面_viewPager事件_xUtils_slidingMenu_网络缓存_数据传递...
  10. Forrester报告:人工智能将取代6%的工作岗位
  11. 优化代码==>常见问卷调查模板,多端通用版本
  12. django -数据库操作
  13. 对合成大西瓜修改图片的实践
  14. 自知识蒸馏(知识蒸馏二)
  15. Transformer for image quality assessment阅读笔记
  16. Nacos只发现不注册
  17. 什么模式下不可使用曝光补偿_曝光的正确顺序是什么 曝光正确顺序介绍
  18. buffer pool详解(free链表+flush链表+lru链表)
  19. 【linux】 下根目录,家目录区别,以及普通用户到root用户的切换
  20. 苹果天气应用专利获批,苹果Find My技术改变防丢技术走向

热门文章

  1. android photopicker怎么修改状态栏,有没有办法阻止UIImagePickerController更改状态栏样式?...
  2. java获取jtable的路径,Java如何在JTable组件中获取选定的单元格?
  3. 乐视android版本点四下,EUI5.9+Android7.0刷机包
  4. 软件构造学习笔记-实验2
  5. [JavaWeb-HTML]HTML概念介绍和快速入门
  6. [JavaWeb-JDBC]JDBC_快速入门_idea jdbc连接Mysql数据库
  7. [PAT乙级]1013 数素数
  8. 高等数学上-赵立军-北京大学出版社-题解-练习5.3
  9. 电脑打字手指正确姿势_写字坐姿不正确的难题,已被家长攻克,果然高手在民间...
  10. TCP提供可靠传输的工作原理和实现过程