hdu1251——统计难题
来源:互联网 发布:淘宝品质管控下架 编辑:程序博客网 时间:2024/05/21 22:58
裸前缀树 只不过 指针和动态内存 我比较陌生 以前没用过啊QAQ
熟悉语法 水一日志 告诉自己 就算noip洗白了 也不要放弃
#include<cstdio>#include<cstring>#include<malloc.h>#define MAXN (30)#define cle(a,b) memset(a,b,sizeof(a))#define loop(i,j,k,l) for(int i=j;l>0?i<=k:i>=k;i+=l)struct trie {trie *next[MAXN];int v;}*root;char s[MAXN];int len;int id;void create() {trie *p=root,*q;loop(i,0,len,1) {id=s[i]-'a'+1;if(p->next[id]==NULL) {q=(trie*)malloc(sizeof(trie));loop(j,1,26,1) {q->next[j]=NULL;}q->v=1;p->next[id]=q;}else{p->next[id]->v++;}p=p->next[id];}}void readdata() {gets(s);len=strlen(s)-1;while(s[0]!=0) {create();cle(s,0);gets(s);len=strlen(s)-1;}}int find() {trie *p=root;loop(i,0,len,1) {id=s[i]-'a'+1;if(p->next[id]==NULL){return 0;}p=p->next[id];if(i==len) {return p->v;}}}void solve() {while(scanf("%s",s)!=EOF) {len=strlen(s)-1;printf("%d\n",find());cle(s,0);}}int main() {root=(trie*)malloc(sizeof(trie));loop(i,1,26,1) {root->next[i]=NULL;}readdata();solve();}
0 0
- hdu1251—统计难题
- hdu1251——统计难题
- hdu1251——统计难题
- hdu1251统计难题—简单字典树
- HDU1251——统计难题(字典树模板)
- 统计难题 hdu1251
- HDU1251统计难题
- 统计难题 hdu1251
- HDU1251-统计难题
- 【统计难题】 hdu1251
- hdu1251统计难题
- hdu1251(统计难题)
- HDU1251:统计难题
- hdu1251统计难题
- HDU1251 统计难题
- hdu1251 统计难题 (Trie)
- hdu1251 统计难题 trie
- HDU1251-统计难题
- 2208——bzoj
- Cocos2d-x血条跟随怪物运动--之游戏开发《赵云要格斗》(5)cocos2dx 3.3移植版
- Mongodb的读书笔记(01)
- noi2014——起床困难综合症
- linux mysql定时备份并压缩
- hdu1251——统计难题
- 差错检测和循环冗余检验crc
- 消息鉴别码与签名的异同
- SCOI2009windy数
- android 权限机制分析
- Problem 038——UVa 514 - Rails
- 给工程src目录下的java文件添加包名
- 自考《操作系统概论》之存储管理
- c#调用脚本语言Lua——简单Demo