百练 2797:最短前缀
来源:互联网 发布:单片机程序员工资 编辑:程序博客网 时间:2024/06/05 14:21
http://bailian.openjudge.cn/practice/2797/
#include<iostream>using namespace std;struct trie{int count;trie *next[26];trie(){count=0;int i=0;for(i=0;i<26;i++){next[i]=NULL;}}}root;char word[1001][21];void insert(char w[]){trie *r = &root;int i;for(i=0;w[i];i++){int t = w[i]-'a';if(r->next[t]==NULL){r->next[t] = new trie;r->next[t]->count = 1;}else if(r->next[t])r->next[t]->count++;r = r->next[t];}}void search(char w[]){trie *r = &root;if(r == NULL)return;int i;for(i=0;w[i];i++){int t = w[i]-'a';if(r->next[t]==NULL)return;cout<<w[i];if(r->next[t]->count==1)break;r = r->next[t];}}int main(){int i,n=1;while(cin>>word[n]){if(word[n][0]=='0')break;insert(word[n++]);}for(i=1;i<n;i++){cout<<word[i]<<" ";search(word[i]);cout<<endl;}return 0;}
0 0
- poj百练2797:最短前缀
- 百练 2797:最短前缀
- 【解题报告】百练2797_最短前缀(字典树)
- 百炼 2797:最短前缀
- poj 2797 最短前缀
- 2797:最短前缀(题解)
- 最短前缀
- 06:最短前缀
- nkoj 1930 最短前缀
- 第4章练习题--7--最短前缀--2797
- 2797:最短前缀(c++ 字典树)
- 北大百练+最长最短单词+gets的使用
- NOI题库1799 最短前缀
- 最短前缀(字典树)
- 字典树 06:最短前缀
- 最短的名字+csuoj+前缀树(字典树)
- 求单词最短的确切前缀表示
- uvalive 3026 Period (前缀最短循环节)
- ViewDragHelper实战 自己打造Drawerlayout
- 百练 2785:武林
- 封装 继承 多态
- Task Flow使用指南之六:Reentry
- Android初学习 - 获取控件尺寸的方法
- 百练 2797:最短前缀
- RadioGroup+Fragment 实现简单选项卡切换
- Android 5.0 - 5.1特性
- html,js一个元素做两次不同点击事件
- poj1258 prim
- 文本文件逻辑分段方案
- #笔记#圣思园 JavaWeb 第2讲——CSS层叠样式表Cascading Style Sheets
- android4.0去掉锁屏和休眠 Power键按钮
- 什么是原子操作