[hihoCoder]1014 Trie水题
最最最最最最最基本的Trie词频统计应用了.
package trie;
import java.util.Scanner;
public class Main {
public static void main( String[] args ) {
TrieTree tt = new TrieTree();
Scanner sc = new Scanner( System.in );
while(sc.hasNext()){
int n = sc.nextInt();
for(int i=0;i<n;i++){
tt.insert( sc.next() );
}
int m = sc.nextInt();
for(int i=0;i<m;i++){
tt.query( sc.next() );
}
}
}
}
class TrieTree {
public Node root;
public TrieTree() {
root = new Node();
}
public void insert( String word ) {
if( this.root == null || word == null || word.isEmpty() )
return;
int i = 0;
Node p = this.root;
while( i < word.length() ) {
if( p.node[ word.charAt( i ) - 'a' ] == null ) {
p.node[ word.charAt( i ) - 'a' ] = new Node( word.charAt( i ) );
p.node[ word.charAt( i ) - 'a' ].count++;
p = p.node[ word.charAt( i ) - 'a' ];
} else {
p.node[ word.charAt( i ) - 'a' ].count++;
p = p.node[ word.charAt( i ) - 'a' ];
}
i++;
}
}
public boolean query( String word ) {
if( word.isEmpty() || word == null )
return false;
Node p = this.root;
int i = 0;
int ret = 0;
while( i < word.length() ) {
if( p.node[ word.charAt( i ) - 'a' ] == null ) {
ret = 0;
System.out.println( ret );
return false;
} else {
ret = p.node[ word.charAt( i ) - 'a' ].count;
p = p.node[ word.charAt( i ) - 'a' ];
}
i++;
}
System.out.println( ret );
return true;
}
}
class Node {
public static final int MAX_NODE = 26;
public Node[] node = new Node[ MAX_NODE ];
public char data;
public int count = 0;
public Node() {
}
public Node( char data ) {
this.data = data;
}
}
样例输入
-
5
babaab
babbbaaaa
abba
aaaaabaa
babaababb
5
babb
baabaaa
bab
bb
bbabbaab样例输出
-
1
0
3
0
0
-
[hihoCoder]1014 Trie水题的更多相关文章
- hdu 1251 (Trie水题)
统计难题 Time Limit: 4000/2000 MS (Java/Others) Memory Limit: 131070/65535 K (Java/Others)Total Submi ...
- codevs——4189 字典&&HihoCoder #1014 : Trie树
题目描述 Description 最经,skyzhong得到了一本好厉害的字典,这个字典里整整有n个单词(1<=n<=200000) 现在skyzhong需要在字典里查询以某一段字母开头的 ...
- hihoCoder #1014 : Trie树 [ Trie ]
传送门 #1014 : Trie树 时间限制:10000ms 单点时限:1000ms 内存限制:256MB 描述 小Hi和小Ho是一对好朋友,出生在信息化社会的他们对编程产生了莫大的兴趣,他们约定好互 ...
- hihoCoder 1014 Trie树 (Trie)
#1014 : Trie树 时间限制:10000ms 单点时限:1000ms 内存限制:256MB 描写叙述 小Hi和小Ho是一对好朋友.出生在信息化社会的他们对编程产生了莫大的兴趣,他们约定好互相帮 ...
- Hihocoder #1014 : Trie树 (字典数树统计前缀的出现次数 *【模板】 基于指针结构体实现 )
#1014 : Trie树 时间限制:10000ms 单点时限:1000ms 内存限制:256MB 描述 小Hi和小Ho是一对好朋友,出生在信息化社会的他们对编程产生了莫大的兴趣,他们约定好互相帮助, ...
- hihocoder 1014: Trie树(Trie树模板题)
题目链接 #include<bits/stdc++.h> using namespace std; ; struct T { int num; T* next[]; T() { num=; ...
- hihocoder #1223 : 不等式 水题
#1223 : 不等式 Time Limit: 1 Sec Memory Limit: 256 MB 题目连接 http://hihocoder.com/problemset/problem/1223 ...
- hihoCoder#1014 Trie树 (前缀树)
题目大意:给一本有n个单词的词典,有m次询问,每次询问的是该词典中有多少个单词有共同的某个前缀. 题目分析:在添加单词建立trie的时候,每经过一个节点就意味着该节点和它的各级祖先节点是某个单词的前缀 ...
- hihoCoder 1014 : Trie树(字典树)
传送门 Description 小Hi和小Ho是一对好朋友,出生在信息化社会的他们对编程产生了莫大的兴趣,他们约定好互相帮助,在编程的学习道路上一同前进. 这一天,他们遇到了一本词典,于是小Hi就向小 ...
随机推荐
- 浅谈Java工具类CommonUtils的使用
package com.xushouwei.cn; import java.util.HashMap; import java.util.Map; import org.junit.Test; imp ...
- thinkphp CURD 1
二.ThinkPHP 3 读取数据 (重点) 对数据的读取 Read $m=new Model('User'); $m=M('User'); select $m-> ...
- Visual Studio 2015的安装与基本使用
为什么要使用Visual Studio 2015? 它是中文的.界面友好.自动补全.实时语法错误提示(上图中波浪线部分).单步调试……最重要的社区版是免费的!所以你不必再使用破解的.老旧的的不兼容现代 ...
- easyUI tootip组件使用
easyUI tootip组件使用: <!DOCTYPE html> <html lang="en"> <head> <meta char ...
- Android开发系列之adb常用命令
对于Android开发者来说,如果没有adb的帮助,那肯定就跟少了一只手那样别扭.其实笔者在刚刚学习Android开发的时候,也没有意识到adb的重要性.想想只要用IDE画出界面,然后实现后台的逻辑代 ...
- loadrunner controller:集合点策略
集合点只有在多用户并发运行的时候才能体现它的作用. Scenario ---> Rendezvous 打开集合点设置界面,如下图所示: 我们可以看到Vusers 列表框里有两个用户,这与我们设置 ...
- python属性查找(attribute lookup)
在Python中,属性查找(attribute lookup)是比较复杂的,特别是涉及到描述符descriptor的时候. 在上一文章末尾,给出了一段代码,就涉及到descriptor与att ...
- 性能监控之Java程序执行解析
大家好,最近接触javassist技术,研究过程中对Java程序执行过程进行了一系列探索,弄清楚了几个盲区(仅针对个人而言),现将经验与大家分享. 1.编码->.java 通常指写代码的过程,最 ...
- java版二叉树算法实现
import java.util.ArrayList; class BinaryTree { private static class TreeNode { int data; TreeNode le ...
- Codeforces 708A Letters Cyclic Shift
A. Letters Cyclic Shift time limit per test:1 second memory limit per test:256 megabytes input:stand ...