problem

维护一个集合,支持以下两种操作
1. 加入一个字符串s
2. 查询集合中是否存在字符串s

solution

  • 维护一个哈希表,判断字符串是否已出现过。

codes

#include<cstdio>
#include<cstring>
#include<iostream>
using namespace std;
const int maxn = 3e4+10, mod1 = 1e6+3, mod2 = 1e6+9, p1 = 47, p2 = 79;int tot, head[mod1], nxt[maxn], val[maxn];//RE
void insert(int x, int y){nxt[++tot] = head[x];head[x] = tot;val[tot] = y;
}
bool query(int x, int y){for(int i = head[x]; i; i = nxt[i])if(val[i]==y)return true;return false;
}int main(){int n;  scanf("%d",&n);while(n--){char op[10], s[210];cin>>op;gets(s);//读入剩余的一整行//双哈希,两个关键字决定一个字符串,减小误差int len = strlen(s), sum1=0, sum2=0;for(int i = 0; i < len; i++){sum1 = (sum1*p1+s[i])%mod1;//REsum2 = (sum2*p2+s[i])%mod2;}if(op[0]=='a')insert(sum1,sum2);else {if(query(sum1,sum2))printf("yes\n");else printf("no\n");}}return 0;
}

【LOJ10034】图书管理(哈希表,字符串)相关推荐

  1. 1071 Speech Patterns (25 分)【难度: 简单 / 知识点: 哈希表 字符串】

    https://pintia.cn/problem-sets/994805342720868352/problems/994805398257647616 将不合法的字符都弄成空格符,然后用strin ...

  2. 提高篇 第二部分 字符串算法 第1章 哈希和哈希表

    浅谈字符串哈希_1264Ikaros的博客-CSDN博客_字符串哈希 图书管理-哈希表_handsome·wjc的博客-CSDN博客 字符串哈希 哈希表 - DTTTTTTT - 博客园 图书管理(L ...

  3. 【C++ 包装器类 map】C++ 标准库(std)中的map结构 哈希表(unordered_map)和黑红树(map)教程

    目录标题 1. 哈希表(unordered_map)和黑红树(map)简介以及初始化 1.1 哈希表的基本介绍 1.1.1 哈希表初始化接口示例 1.1.2 哈希表的键值的注意事项 1.1.3 自定义 ...

  4. 一本通提高篇 哈希和哈希表(一)哈希

    写在前面 C S P 2019 d a y 1 CSP2019day1 CSP2019day1 无脑挂掉 150 ! 150! 150! 再次被老师嘲讽没考过 0 0 0基础的 这么一说 学 O I ...

  5. 【数据结构笔记39】哈希表/散列表、(数据关键字/字符串关键字)散列构造函数

    本次笔记内容: 11.1.1 引子:散列的基本思路 11.1.2 什么是散列表 11.2.1 数据关键词的散列函数构造 11.2.2 字符串关键词的散列函数构造 文章目录 散列表背景 基本思想引出 已 ...

  6. 线性表顺序存储结构图书管理

    线性表顺序存储结构图书管理 一开始看书里面的线性表的顺序存储结构,感觉简单,觉得动态链表才能做出一点东西,但是顺序存储不仅于此,也能做出来.顺序结构相比链式结构,内容上有较大差异,各有难点 文章目录 ...

  7. 数据结构与算法——哈希表与字符串

    文章目录 1.预备知识 1.1 最简单的哈希--统计字符个数 1.2 哈希表排序整数 1.3 哈希映射的问题 2.最长回文串 2.1 题目描述 2.2 C++代码实现 3.单词规律 3.1 题目描述 ...

  8. 【LeetCode笔记】139. 单词拆分(Java、动态规划、字符串、哈希表)

    文章目录 题目描述 思路 & 代码 二刷更新 题目描述 漏网之题..一个月前写的居然没写博客 思路 & 代码 HashSet 存储 word,便于查询 动态规划三要素在注释中 思路:如 ...

  9. 有十五个数按由大到小顺序存放在一个数组中_数据结构基础 (代码效率优化, 线性表, 栈, 队列, 数组,字符串,树和二叉树,哈希表)...

    作者:张人大 代码效率优化 复杂度 -- 一个关于输入数据量n的函数 时间复杂度 -- 昂贵 与代码的结构设计有着紧密关系 一个顺序结构的代码,时间复杂度是O(1), 即任务与算例个数 n 无关 空间 ...

最新文章

  1. 使用Tensor Expression张量表达式处理算子
  2. las格式测井曲线_邹榕,等:顺北和托甫台区块奥陶系断裂结构单元测井响应特征初探...
  3. 23种设计模式之适配器模式(Adapter)
  4. python创建文件os_Python之文件与目录操作(os、zipfile、tarfile、shutil)
  5. idea使用git插件,出现冲突了怎么解决?多场景分析助你解决问题
  6. asp.net mvc中DropDownList,CheckBox,RadioButton
  7. java集合set的使用_浅析Java中的set集合类型及其接口的用法
  8. 2012 php mysql_Apache+Mysql+PHP(win sercer2012)
  9. 怎么禁用域控下的计算机配置,怎样从Windows域环境下禁用USB口设备
  10. Mybatis环境部署
  11. sd卡座封装尺寸_讯普电子SD卡座的引脚定义
  12. Java基础练习之流程控制(二)
  13. 73本免费的语言无关的优秀编程书籍汇总
  14. 基于c语言编写的五子棋小游戏
  15. html跑马灯代码大全(图片文字移动代码)
  16. idea mac xml注释快捷键
  17. VC编程来操纵Office
  18. 手机端追剧神器,最新最火电影免费看,非常牛批!
  19. 特征预处理:归一化/标准化/缺失值
  20. 中国慕课moocpython答案_中国大学慕课moocPython编程基础答案

热门文章

  1. 生活中的英语 —— 动植物篇
  2. 电学 —— LC 振荡电路
  3. 强悍的 Linux —— Linux 中 TTY 是什么意思
  4. Python debug —— 逻辑错误(三)
  5. c语言宽度限定词,C语言中限定词的深层分析
  6. java程序设计 论文_《JAVA程序设计》论文要求
  7. 自学python要多久-怎么自学python,大概要多久?
  8. 学python可以做什么-学会Python后都能做什么?介绍五种Python的实用场景
  9. python从入门到放弃图片-Python从入门到放弃:与用户交互
  10. python编程是啥-什么是Python编程课程