统计单词出现的最多次数(Trie树)

2023-10-29

A

Time Limit: 60ms   Memory limit: 65536K  有疑问?点这里^_^

题目描述

给出n(1<= n && n <= 2*10^6)个字符串,每个字符串只包含小写英文字母,且最多有五个。问这n个字符串中出现次数最多的有多少个。

输入

单组输入。第一行输入一个数字n,接下来n行,每行包含一个字符串。

输出

输出一个数字代表答案。

示例输入

5
aba
abb
w
aba
z

示例输出

2


参考自算法竞赛训练指南。话说啸爷出题就爱卡STL。
#include <iostream>
#include <vector>
#include <algorithm>
#include <cstring>
#include <cstdio>
using namespace std;
const int maxn=900000;
int ch[maxn][26];//ch[i][j]保存节点i的那个编号为j的子节点
int val[maxn];//记录每个单词上面的附加信息
int sz,Max=-1;//sz为节点总数
void insert(char *s)//插入
{
	int u=0,len=strlen(s);
	for(int i=0;i<len;i++)
	{
		int c=s[i]-'a';
		if(!ch[u][c])
		{
			memset(ch[sz],0,sizeof(ch[sz]));
			ch[u][c]=sz++;
		}
		u=ch[u][c];
	}
	val[u]++;
	if(Max<val[u])
		Max=val[u];
}
int main()
{
    char s[7];int n;
    scanf("%d",&n);getchar();
    sz=1;
    memset(ch[0],0,sizeof(ch[0]));//最开始只有一个根节点
    memset(val,0,sizeof(val));
    while(n--)
	{
		scanf("%s",s);
		insert(s);
	}
	printf("%d\n",Max);
	return 0;
}


本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

统计单词出现的最多次数(Trie树) 的相关文章

  • Python 面试题2023

    原本链接 点击查看 https chat openai com share a4ffcfdc a939 4d9e 84b4 5d5145d6d193 chatgpt site xiaoi ai Python 面试八股 python面试八股
  • 计算机竞赛 基于生成对抗网络的照片上色动态算法设计与实现 - 深度学习 opencv python

    文章目录 1 前言 1 课题背景 2 GAN 生成对抗网络 2 1 简介 2 2 基本原理 3 DeOldify 框架 4 First Order Motion Model 5 最后 1 前言 优质竞赛项目系列 今天要分享的是 基于生成对抗
  • avue实现用户本地保存自定义配置字段属性及注意事项(基于tj-vue2-tools)

    avue实现用户本地保存自定义配置字段属性及注意事项 基于tj vue2 tools tj vue2 tools项目地址 https www npmjs com package tj vue2 tools 文档请看项目官方 依赖js bas
  • (python)实现用CPM算法划分社区(两种代码)

    CPM理论讲解 cpm算法学习笔记 蓝砂石的博客 CSDN博客 cpm算法 1 自己实现的代码将社区分为9个 有部分节点未分配社区 自己实现派系过滤算法 import numpy as np import networkx as nx fr
  • 人生若只如初见服务器维护,「北京服务器」人生若只如初见

    文 醉 琴弦 某媒体的编辑约我参与RO2的工作团队 最初并未欣然应允 RO是我第一个网游 亦是伴随我长大 见证我每个不同的人生阶段的载体 投入的感情也不言而喻 并不确定将来还能拿出多少热情投入到另个游戏中 所以迟迟没有答复 阴雨 连绵不绝
  • odoo动态隐藏表单的编辑按钮

    最近在做项目的时候遇到一个问题 其实之前也有遇到 就是说客户要求当一条记录的状态发生变化时 在指定状态的记录不可编辑 之前遇到这个问题是 所做的处理是保存的校验记录的状态 通过raise error的方式去阻止用户保存编辑 这种事后的处理客
  • 可复制的领导力前两章总结

    如何布置任务 1 布置任务和结果 2 复数任何和结果 3 了解任务的目的和背景 4 处理任务过程中会遇到什么意外 遇到意外如何处理 A情况需要汇报 B情况需要自己做决定 5 如果为了达到这个目的和完成任务由什么好的想法和建议吗 示例 给华为
  • cvat for images 1.1 xml文件处理

    xml文件实例 处理代码如下 import xml etree ElementTree as ET import numpy as np import json import math from collections import Cou
  • Linux基础知识总结

    1 ls 显示隐藏文件 ls a 隐藏文件都是以 开头的 回到home目录 ls 通配符 单独的通配符不能识别 必须结合其他字母 1 代表0个或多个任意字符 如只罗列后缀是 cpp的文件 2 只代表单个字符 如罗列前缀有4个字母后缀为 h的
  • EAI Siebel Adapter - Query Page

    IO Account IO 新建workflow 输入参数 PageSize 查询返回几条记录 StartRowNum 从0开始 向后递增 如果用来选择页数的话 StartRowNum PageSize PageNum 1 PageNum从
  • 论美妙的共鸣

    我来提供几个简单实用的思路吧 如果你想和别人有的聊 最为有效的一个解决方法大概是 分析自己知道什么 去发现对方知道什么 暗自合计一下 你们共同知道的是什么 01 比如 你发现对方和你都对动漫感兴趣 你们家是一个地方的 你们都喜欢打游戏 你们
  • 在单页应用中,如何优雅的监听url的变化

    单页应用的原理从早起的根据url的hash变化 到根据H5的history的变化 实现无刷新条件下的页面重新渲染 那么在单页应用中是如何监听url的变化呢 本文将总结一下 如何在单页页面中优雅的监听url的变化 单页应用原理 监听url中的
  • ajax请求图片返回bolb,ajax异步请求图片blob转base64并显示出来

    转载 https www jianshu com p cc9d2a1bd833 methods tapCaptcha var that this Request get captcha responseType blob then res
  • BUUCTF刷题记录

    1 NiZhuangSiWei 知识点 php input php filter 文件包含 序列化 赛题代码
  • Ubuntu22.04 docker镜像apt update 报错E: Problem executing scripts APT::Update::Post-Invoke

    Ubuntu22 04 docker镜像apt update 报错E Problem executing scripts APT Update Post Invoke Dockerfile FROM ubuntu WORKDIR root
  • rhel7和centos7找回root密码 以及rhel6和centos6找回root密码

    第一步 在启动grub的菜单时 按e进入编辑模式 第二步 找到Linux 16的那一行 将ro改为rw init sysroot bin sh 第三步 按下Ctrl X 使用单用户模式启动 第四步 可以使用下面的命令访问系统 chroot
  • 计算机网络原理 谢希仁(第8版)第二章习题答案

    2 01 物理层要解决哪些问题 物理层的主要特点是什么 要解决的问题 屏蔽掉硬件设备与传输媒体的差异 使比特流在传输媒体上透明的传输 用多大电压表示1和0 以及接收方如何识别发送发所发送的比特 确定连接电缆的插头有多少根引脚 以及各引脚如何
  • 力扣(LeetCode)算法_C++——稀疏矩阵的乘法

    给定两个 稀疏矩阵 大小为 m x k 的稀疏矩阵 mat1 和大小为 k x n 的稀疏矩阵 mat2 返回 mat1 x mat2 的结果 你可以假设乘法总是可能的 示例 1 输入 mat1 1 0 0 1 0 3 mat2 7 0 0
  • Vue 中 CSS scoped 的原理

    前言 在日常的Vue项目开发过程中 为了让项目更好的维护一般都会使用模块化开发的方式进行 也就是每个组件维护独立的template script style 主要介绍一下使用

随机推荐

  • 如何用java实现水仙花数

    看到标题 首先先要知道什么是水仙花数 所谓 水仙花数 是指一个三位数 其各位数字立方和等于该数 列如153 1 1 1 5 5 5 3 3 3 那么153就是水仙花数 首先是分析需要的功能 首先他是一个3位数 那值一定在100 1000之间
  • 自定义XML文件的读取

    自定义XML文件的读取 1 创建一个控制台项目 并创建一个XMLHelper cs文件 并写入下面代码 region 实体 Serializable 表示该类可序列化 XmlRoot ElementName MyTest public cl
  • 原生AJAX的操作(五步写法,兼容,封装,跨域)

    1 ajax的五步写法
  • echarts自定义tooltip样式

    修改echarts的tooltip样式 let option title text 反馈问题处 n理不及时 使用 n可以文字换行 left 30 top 50 textStyle color fff fontSize 10 tooltip
  • 【计算机算法】递归——递归实现逆序输出整数

    题目 本题目要求读入1个正整数n 然后编写递归函数reverse int n 实现将该正整数逆序输出 输入格式 输入在一行中给出1个正整数n 输出格式 对每一组输入 在一行中输出n的逆序数 输入样例 12345 输出样例 54321 我的实
  • 规则引擎Drools使用 第十二篇 Drools 的高级语法之RHS加强

    RHS部分是规则体的重要组成部分 当LHS部分的条件匹配成功后 对应的RHS部分就会触发执行 一般在RHS部分中需要进行业务处理 在RHS部分Drools为我们提供了一个内置对象 名称就是drools 本小节我们来介绍几个drools对象提
  • IDEA常用插件之代码规范检查

    Alibaba Java Coding Guidelines 安装 使用 手动扫描 这里扫描可以扫描某一个类 某一个包 整个项目都支持 扫描结果 实时扫描 开启实时扫描在代码编写过程中也会实时提醒
  • 【Objective-C】07-自定义构造方法和description方法

    本文目录 知识回顾 一 自定义构造方法 二 description方法 说明 这个Objective C专题 是学习iOS开发的前奏 也为了让有面向对象语言开发经验的程序员 能够快速上手Objective C 如果你还没有编程经验 或者对O
  • TCP三次握手详解

    TCP 传输控制协议 面向连接的可靠传输协议 在完成了传输层的基础工作外 还需要保障传输的可靠性 面向连接 在传输数据前 需要通过三次握手建立端到端的虚链路 可靠传输 传输过程中使用到4种可靠传输机制 确认 排序 流控 滑动窗口 重传 TC
  • [sdio] Common Information Area (CIA) 分析及初始化过程

    一 CIA 概述 SDIO 卡寄存器存储区中有一固定的公共端口区域 简称为 CIA CIA 中的寄存器包括了对 I O 端口功能 中断产生以及端口工作信息 可以通过读写功能 0 对 CIA 所定义的寄存器进行相关操作 CIA 包含了 CCC
  • 做外贸怎么收款?2020最新外贸B2B收款结汇方法详解!

    做外贸怎么收款 很多做外贸的朋友 因为外贸收款的需要 注册了Payoneer外贸e户通 虽然 大家清楚Payoneer外贸e户通功能非常强大 就如我们的文章 Payoneer推出外贸e户通 5种外贸收款方式 提现仅0 5 里面介绍的一样 但
  • mysql 密码共用_数据库密码加密公用秘要生成器,数据库密码加密解密入口(转)...

    public classEncryptor public static final String HUNDSUN VERSION system 管理平台 version 2 0 1 lastModiDate describe protect
  • 【满分】【华为OD机试真题2023 JS】木板

    华为OD机试真题 2023年度机试题库全覆盖 刷题指南点这里 木板 时间限制 1s 空间限制 256MB 限定语言 不限 题目描述 小明有n块木板 第i 1 i n 块木板的长度为ai 小明买了一块长度为m的木料 这块木料可以切割成任意块
  • 获得一个类的Class类对象的三种方法(Class.forName()方法;类实例对象.getClass()方法;类名.class;)

    Class forName 方法 注意 需要捕获异常ClassNotFoundException 好处 不用创建实例对象 就可以获得Class引用 只需要知道类的全路径地址即可 类实例对象 getClass 方法 注意 如果有该类型的实例对
  • 【React】 13课 安装react脚手架

    第一步 安装脚手架之前需要电脑已安装node与npm 首先按住 shift 鼠标右键 按下 在此处打开命令行窗口 进入命令行窗口 或者 win R 键 输入cmd 进入命令行窗口 输入 node v 与 npm v 查看有无安装node与n
  • Linux安装MySQL5.7.37

    下载地址 https dev mysql com downloads mysql 5 7 html downloads 点击download进入以下页面 可以找到下载链接地址 https dev mysql com get Download
  • python3 sha256加密用法

    hashlib模块简介 hashlib模块为不同的安全哈希 安全散列 Secure Hash Algorithm 和 信息摘要算法 Message Digest Algorithm 实现了一个公共的 通用的接口 也可以说是一个统一的入口 因
  • vue-router之addRoutes使用遇到的坑

    最近项目中使用了vue router的addRoutes这个api 遇到了一个小坑 记录总结一下 场景复现 做前端开发的同学 大多都遇到过这种需求 页面菜单根据用户权限动态生成 一个常见的解决方案是 前端初始化的时候 只挂载不需要权限路由
  • 解决Tomcat后台修改前端无变化问题

    在用tomcat8 9 eclipse ssm开发java web项目的时候 有时会发现后台代码修改了 而前端显示却没有变化 两种情况及解决方案如下 状况一 修改了JSP页面代码 但是浏览器显示出来的还是之前的页面 原因 服务器为提高响应速
  • 统计单词出现的最多次数(Trie树)

    A Time Limit 60ms Memory limit 65536K 有疑问 点这里 题目描述 给出n 1 lt n n lt 2 10 6 个字符串 每个字符串只包含小写英文字母 且最多有五个 问这n个字符串中出现次数最多的有多少个