hihocoder-1014
来源:互联网 发布:美图秀秀for mac 编辑:程序博客网 时间:2024/04/28 20:05
hihocoder-1014-字典树
#include <cstdio>#include <cstring>#include <cmath>#include <cstdlib>#include <cctype>#include <climits>#include <ctime>#include <iostream>#include <algorithm>#include <map>#include <set>#include <vector>#include <queue>#include <utility>#include <stack>#include <functional>using namespace std;typedef long long lovelive;const int inf = INT_MAX;const double pai = acos(-1.0);const double gold = (sqrt(5.0) - 1.0) / 2.0;struct node{ int child[26], cnt; void init() { cnt = 0; memset(child, -1, sizeof(child)); }};node trie_arr[1000117];int n, m, num, countc;char input_str_arr[12], qu_str_arr[12];void input_data() //trie建立{ int i, j, k, pos; memset(input_str_arr, 0, sizeof(input_str_arr)); scanf("%s", input_str_arr); i = 0, pos = 0; while(input_str_arr[i]) { k = input_str_arr[i] - 'a'; if(trie_arr[pos].child[k] == -1) { trie_arr[num].init(); trie_arr[pos].child[k] = num++; } pos = trie_arr[pos].child[k]; trie_arr[pos].cnt += 1; i += 1; }return ;}void solve() //trie查询{ int i, j, k, pos; countc = 0; memset(qu_str_arr, 0, sizeof(qu_str_arr)); scanf("%s", qu_str_arr); i = 0, pos = 0; while(qu_str_arr[i]) { k = qu_str_arr[i] - 'a'; if(trie_arr[pos].child[k] == -1) { countc = 0; return ; } pos = trie_arr[pos].child[k]; i += 1; } countc = trie_arr[pos].cnt;return ;}void output_data(){ int i, j, k; printf("%d\n", countc);return ;}int main(int argc, char const *argv[]){#ifndef ONLINE_JUDGE// freopen("in.in", "r", stdin);// freopen("out.out", "w", stdout);#endif // ONLINE_JUDGE int i, j, k; while(scanf("%d", &n) != EOF) { num = 1; trie_arr[0].init(); while(n--) { input_data(); } scanf("%d", &m); while(m--) { solve(); output_data(); } }return 0;}
没什么可说的吧。。。
0 0
- hihocoder-1014
- 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
- hihocoder 1014 trie树
- HihoCoder 1014 : Trie树
- hihoCoder 1014Trie树
- 公共技术点之面向对象六大原则
- 老生常谈“程序员绩效考核”
- 魔法方法含义
- SkImageDecoder::Factory returned null
- 从零开始学习unity挖坑之路一
- hihocoder-1014
- 求职之路
- hdu 3974 Assign the task 线段树(时间戳)
- 指针的再认识
- JavaScript 事件模型 事件处理机制
- 1007 Financial Management
- 《数据结构编程实验》 2.1.2Ride to School
- 开发部程序员绩效考核办法
- 初识pthread(一)-线程管理之创建/结束线程