hihoCoder #1014 : Trie树
来源:互联网 发布:asp php 编辑:程序博客网 时间:2024/06/01 15:18
题目:
原题链接:https://hihocoder.com/problemset/problem/1014
题解思路:
题目上边已经讲的比较清楚了,建立一棵trie树,同时在创建树的时候,每经过一个节点就给它值加一,也就是说在建立树的时候就顺便记录下了以当前为前缀的单词的个数。
代码如下:
#include<bits/stdc++.h>#define length 11using namespace std;struct Node{ int num; Node* s[26]; Node(){ num = 0; for(int i=0;i<26;i++){ s[i] = NULL; } }}node;void insertIn(char ch[]){ Node *n = &node; for(int i=0;ch[i];i++){ int index = ch[i] - 'a'; if(n->s[index] == NULL){ n->s[index] = new Node(); } n = n->s[index]; n->num++; }}int findNods(char ch[]){ Node *n = &node; int i; for(i=0;ch[i];i++){ int index = ch[i] -'a'; if(n->s[index] == NULL){ cout<<0<<endl; return 0; } n = n->s[index]; } cout<<n->num<<endl; return 0;}int main(){ int s; char ch[length]; cin>>s; for(int i=0;i<s;i++){ cin>>ch; insertIn(ch); } cin>>s; for(int i=0;i<s;i++){ cin>>ch; findNods(ch); } return 0;}
也有好久没写算法题了,当时没坚持acm确实是最大的失误,现在上手写树还是相当不熟练的,c++也用的不习惯了,还得坚持!
阅读全文
0 0
- hihocoder 1014 Trie树 trie
- [hihoCoder 1014][Trie 树]Trie
- hihocoder 1014 trie树
- hihocoder#1014 : Trie树
- hihoCoder #1014 : Trie树
- [HiHoCoder]#1014 : Trie树
- hihoCoder#1014Trie树
- hihoCoder #1014 Trie树
- hihocoder-#1014 : Trie树
- hihoCoder 1014 : Trie树
- hihoCoder #1014 : Trie树
- hihocoder-#1014 : Trie树
- hihocoder #1014 trie 树
- hihoCoder - 1014 - Trie树
- hihoCoder 1014 Trie树
- hihocoder 1014 trie树
- HihoCoder 1014 : Trie树
- hihoCoder 1014Trie树
- DCGAN论文笔记+源码解析
- ZZULIOJ【2173】GJJ的日常之玩游戏【思维】
- 302和302的详细解析
- Xshell Linux服务器相关操作命令使用说明收集
- [Usaco2008 Oct]牧场行走
- hihoCoder #1014 : Trie树
- jdk安装
- echarts地图分布-实例
- php代码20个实用技巧 ------ 转发自菜鸟教程
- Swing 添加滚动条
- HDU4864(机器数和任务数、贪心)
- 树莓派挂了...又复活了
- PHP-ML (php机器学习库)详细学习 (一)
- CSS中的background属性探究