tire字符统计(字典树)
共有 N 个操作,所有输入的字符串总长度不超过 105,字符串仅包含小写英文字母。
输入格式
第一行包含整数 N,表示操作数。
接下来 N 行,每行包含一个操作指令,指令为
I x
或Q x
中的一种。输出格式
对于每个询问指令
Q x
,都要输出一个整数作为结果,表示 x 在集合中出现的次数。每个结果占一行。
数据范围
1≤N≤2∗104
输入样例:
5 I abc Q abc Q ab I ab Q ab
输出样例:
1 0 1
#include <iostream>using namespace std;
constexpr int N=1e5+7;
int tir[N][26],cnt[N],idx;
char str[N];
void insert(char strr[]){int p=0;for(int i=0;strr[i];i++){int u=strr[i]-'a';if(!tir[p][u]) tir[p][u]= ++idx;p=tir[p][u];}cnt[p]++;
}
int query(char strr[]){int p=0;for(int i=0;strr[i];i++){int u=strr[i]-'a';if(!tir[p][u]) return 0;p=tir[p][u];}return cnt[p];
}
int main(){int n;scanf("%d",&n);while(n--){char op[2];scanf("%s%s",op,str);if(*op=='I')insert(str);else{printf("%d\n",query(str));}}return 0;
}
tire字符统计(字典树)相关推荐
- 用于存储中文字符的字典树
引言 在做中文分词的项目中,需要重复读取词库中的数据.因此如果简单得将词库中的词语读取到列表中会降低会降低每次扫描的效率.于是采用Trie(字典树)的数据结构来进行存储. 在这篇博文中,已经对Trie ...
- python树的实现_Python实现简单字典树的方法
本文实例讲述了Python实现简单字典树的方法.分享给大家供大家参考,具体如下: #coding=utf8 """代码实现了最简单的字典树,只支持由小写字母组成的字符串. ...
- 字典树简单实现 插入 查找 遍历
字典树是一种存储字符串的高效的结构,它保存了不同字符的相同前缀,又因此叫做前缀树,使用前缀,大大避免相同字符的重复匹配,加快查找效率 字典树是一颗多叉树,比如存储26个字母的,那么就有26叉 字典树的 ...
- python 实现字典树_Python实现简单字典树的方法
本文实例讲述了Python实现简单字典树的方法.分享给大家供大家参考,具体如下: #coding=utf8 """代码实现了最简单的字典树,只支持由小写字母组成的字符串. ...
- 『ACM--数据结构--字典树』信息竞赛进阶指南--Tire树
主要不是讲实现,是分享代码! 啥是字典树: Trie树,即字典树,又称单词查找树或键树,是一种树形结构,是一种哈希树的变种.典型应用是用于统计和排序大量的字符串(但不仅限于字符串),所以经常被搜索引擎 ...
- 南阳oj 题目290 动物统计加强版 字典树
动物统计加强版 时间限制:3000 ms | 内存限制:150000 KB 难度:4 描述 在美丽大兴安岭原始森林中存在数量繁多的物种,在勘察员带来的各种动物资料中有未统计数量的原始动物的名单.科学家 ...
- Tire树(字典树-字符串快速查找)
前言 一.Tire树是什么? 二.怎么建立tire树 1.字符串插入Tire树入 2.查找字符串 总结 前言: 最近是在复习基础算法,正好复习到了数据结构,所以写了自己对Tire树的理解,数据结构对我 ...
- HDU 1251 统计难题 字典树/STL
统计难题 Time Limit:2000MS Memory Limit:65535KB 64bit IO Format:%I64d & %I64u Description Ig ...
- HDU1247 字典树 Hat’s Words(Tire Tree)
Hat's Words Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others) Tota ...
最新文章
- 鸟哥的linux私房菜内容,《鸟哥的linux私房菜》学习笔记 权限
- 宁夏大学数学与计算机学院,毕利-宁夏大学信息工程学院
- 【Machine Learning】机器学习の特征
- boost::container模块实现字符串视图兼容性
- 网上选课系统java大作业_Java面向对象设计大作业——公选课选课系统
- 海南2021高考成绩分数查询时间,2021海南高考成绩查询公布时间今天几点可以查询...
- 深度学习神经网络:改善与优化的方法
- java ora-12505_Oracle SQL Developer连接报错(ORA-12505)的解决方案(两种)
- 从命令式功能到纯功能性,然后再返回:Monads与范围内的延续
- 智伴机器人安卓怎么设置个人热点_周五到!!宿舍断网怎么办,教你一招
- linux ls不显示total,Linux中使用ls指令时total的意思
- SpringCloud学习笔记020---MongoDb之json与bson的区别
- 算法--职前算法复习
- excel如何随机生成不重复的数字
- 广州uc优视java面试_UC优视(UC浏览器)面试经验
- 图片url显示服务器,服务器上图片的url地址
- 什么事件必须要我王二狗来处理?
- Effective C++ 读书笔记之Part5.Implementations
- 【游戏】2048及各种变种大集合汇总【更新ing~新版Floppy2048 - 恒星聚变版 - 恶搞改数据】...
- java程序设计教程答案解压密码,泛微网络java面试
热门文章
- 为什么CAD软件中图块插入时无法分开设置XYZ轴比例?
- 物体自动绕XYZ旋转
- j-link初次烧录J-Link V6.12a InfoeThe firmware of the connected J-Link (S/N: 20090928) does not suppo
- C#练习题答案: TIY-Fijhghbujhjh【难度:1级】--景越C#经典编程题库,1000道C#基础练习题等你来挑战
- C++对象模型探索--04数据语义
- 【noip2016十连测round3】T3 涂色游戏 【矩阵快速幂优化dp】
- 年薪高达30万,人才缺口40万,这个神仙职业今年太火了!
- WinMount 2.1.8 版, 日期2007.12.21
- 计算机论文订票系统,计算机系毕业论文火车订票系统的设计与实现.doc
- 蓝桥杯单片机 | 特训案例【进阶06】基于PCF8591的DAC模拟电压输出