这题内存需求很大,我用静态数组写的trie总MLE,看discuss说50w的数组才过,但我一开50w的就MLE了啊……想不通

这是链表版的trie,1个case,所以也不用考虑内存释放什么的

#include<cstdio>
#include<cstring>
#include<cstdlib>
using namespace std;
struct trie
{struct trie *son[26];int n;
}*root;
inline int idx(char &a)
{return a-'a';
}
void insert(char *s)
{int i,j;struct trie *c,*newnode;c=root;for(i=0;s[i];i++){if(c->son[idx(s[i])]!=0){c=c->son[idx(s[i])];c->n++;}else{newnode=(struct trie *)malloc(sizeof(struct trie));for(j=0;j<26;j++)    newnode->son[j]=0;c->son[idx(s[i])]=newnode;c=newnode;c->n=1;}}
}
int find(char *s)
{int i;int len;struct trie *c;len=strlen(s);if(len==0)   return 0;c=root;for(i=0;i<len;i++){if(c->son[idx(s[i])]!=0){c=c->son[idx(s[i])];}else    return 0;}return c->n;
}
int main()
{char a[11];int i;root=(struct trie *)malloc(sizeof(struct trie));for(i=0;i<26;i++)  root->son[i]=0;root->n=0;while(gets(a),strcmp(a,"")!=0)insert(a);while(gets(a)!=0)printf("%d\n",find(a));return 0;}

hdu 1251 字典树,指针版相关推荐

  1. HDU 5687 字典树入门

    Problem C Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 131072/131072 K (Java/Others) Tota ...

  2. hdu 4099 字典树 + 斐波那契

    题意:       给你一个串(最长40位)问你这个串是斐波那契F(n)  n <= 99999中的那个数的前缀,如果存在多个输出最小的n否则输出-1. 思路:       给的串最长40位,那 ...

  3. hdu 1298 字典树 + DFS (模拟T9文本输入)

    题意:       给你一些按键顺序,让你输出每一步中概率最大的那个单词,这里的概率计算方 法好好看看别弄错了,一开始就是因为弄错了,各种wa,比如 abc 1 ,ab 1,那么 ab 的概率就是2 ...

  4. Prefix HDU - 5790 字典树 + 主席树

    传送门 文章目录 题意: 思路: 题意: 给你nnn个串,每次询问一个区间,返回这个区间的串的不同的前缀个数,强制在线. 思路: 碰到字符串前缀的问题,我们自然的想到用字典树来解决. 对于每个串,我们 ...

  5. HDU 1800(字典树)

    简单的字典树水题,统计为单词前缀的单词数,取最大,注意要去前0,具体原理还是自己想想吧,最大数决定了最大分组. 诶 PKU月赛之后 我发现我只会水的 .............. #include&l ...

  6. HDU 5536 字典树

    题意:就是公式. 这现场赛O(n^3)能过,觉得太没天理了. 做法:字典树,枚举两个数,然后在字典树上贪心的跑. #include <bits/stdc++.h>using namespa ...

  7. hdu 1247 字典树

    题意:给你一部分单词,让你找出所有这样的单词:a+b=c,就是一个单词,由另外两个单词串联而成 解题思路:先输入全部单词,构建一棵tire树,然后枚举所有单词,对单词进行查找,查找过程中经过的单词节点 ...

  8. HDU 1251(trie树)

    统计难题 Time Limit: 4000/2000 MS (Java/Others)    Memory Limit: 131070/65535 K (Java/Others) Total Subm ...

  9. Tri树(字典树JAVA版)联想输入法所用的数据结构

    又到了快复试的时候了.遥想去年此时,心情忐忑不安,复试机试差点挂掉.当时考的是,联想输入法,想想都恐怖.这段时间写算法,顺便把那个给写了.也算最后纪念一下我的考研.我爱新学校,我也爱我的同学和老师,我 ...

最新文章

  1. 【算法学习】堆排序建立最大堆
  2. kafka存储机制与读写流程
  3. IgniteMe debug 寒假逆向生涯(2/100)
  4. Linux配置基础命令
  5. java trim all,[JAVA中各种去除空格][java string.trim()][str.replaceAll去空格]
  6. java.util.list e_E remove()
  7. PHP:打造一个无限极评论模块
  8. salt把返回写入到mysql
  9. python3socket非阻塞在linux里无效_利用Python中SocketServer实现客户端与服务器间非阻塞通信方法介绍...
  10. spring-kafka广播模式配置_交换机为什么要划分vlan?交换机如何配置
  11. Python批量移动文件到指定目录
  12. think-cell 加载项在 Office 出现故障后消失,怎么解决?
  13. 用Python 计算t分布的置信区间
  14. Android 适配深色模式
  15. 腾讯觅影正式对外开放,可用AI进行医学图像分析和辅助诊疗
  16. 电子设计(1)二极管防电源反接电路
  17. 20P42 500个LUTs创意旅行VLOG时尚婚礼人物环境复古特殊INS电影调色预设+25个复古老电影VHS特效
  18. js算法---寻找连续数组中的缺失数
  19. ADT: Graph 图
  20. 微信视频服务器能保存多久,微信视频动态保存多久(微信背景视频只能一天吗)...

热门文章

  1. redis linux工具安装,linux 安装redis缓存工具
  2. 已经安装mysql xampp_windows 7 本机已安装mysql5的情况上 安装XAMPP
  3. python 设计简易计算器_python小项目——实现简易的计算器
  4. Leetcode杯 第三题解答(动态规划)
  5. Selenium 凭什么成为 Web 自动化测试的首选?(内附源码)
  6. php验证码一直验证错误,织梦输入正确验证码登录却一直显示错误的解决方法
  7. python开发效率怎样提高_python 提高开发效率的5个小技巧
  8. idea运行maven:No URLs will be polled as dynamic configuration sources
  9. ubuntu下的常见12个命令---欢迎补充
  10. python编辑excel文件_python自动化之修改excel(包括xls文件和xlsx文件)