麻豆小视频在线观看_中文黄色一级片_久久久成人精品_成片免费观看视频大全_午夜精品久久久久久久99热浪潮_成人一区二区三区四区

首頁 > 學(xué)院 > 開發(fā)設(shè)計(jì) > 正文

統(tǒng)計(jì)難題

2019-11-11 06:07:32
字體:
供稿:網(wǎng)友

統(tǒng)計(jì)難題

Time Limit: 4000/2000 MS (java/Others)    Memory Limit: 131070/65535 K (Java/Others)Total Submission(s): 37320    Accepted Submission(s): 13799PRoblem DescriptionIgnatius最近遇到一個(gè)難題,老師交給他很多單詞(只有小寫字母組成,不會(huì)有重復(fù)的單詞出現(xiàn)),現(xiàn)在老師要他統(tǒng)計(jì)出以某個(gè)字符串為前綴的單詞數(shù)量(單詞本身也是自己的前綴). Input輸入數(shù)據(jù)的第一部分是一張單詞表,每行一個(gè)單詞,單詞的長(zhǎng)度不超過10,它們代表的是老師交給Ignatius統(tǒng)計(jì)的單詞,一個(gè)空行代表單詞表的結(jié)束.第二部分是一連串的提問,每行一個(gè)提問,每個(gè)提問都是一個(gè)字符串.注意:本題只有一組測(cè)試數(shù)據(jù),處理到文件結(jié)束. Output對(duì)于每個(gè)提問,給出以該字符串為前綴的單詞的數(shù)量. Sample Input
bananabandbeeabsoluteacmbabbandabc Sample Output
2310

解題報(bào)告:字典樹模板題,注意提交時(shí)用C++編譯器,G++會(huì)超時(shí)。

code:

#include<iostream>#include<stdio.h>#include<queue>#include<vector>#include<stack>#include<cstring>#include<algorithm>using namespace std;typedef long long ll;const int maxn=100005;const int MAX=26;typedef struct node{    struct node *next[MAX];    int flag;  //該字母出現(xiàn)的次數(shù)}Trie;Trie *root;/*root要初始化root=(Trie *)malloc(sizeof(Trie));root->flag=0;for(int i=0;i<MAX;i++){    root->next[i]=NULL;}*/void createTrie(char *str) //創(chuàng)建一棵字典樹{    int len = strlen(str);    Trie *p = root, *q;    for(int i=0; i<len; i++)    {        int id = str[i]-'a'; //小寫字母        if(p->next[id] == NULL)        {            q = (Trie *)malloc(sizeof(Trie));            q->flag = 0;            for(int j=0; j<MAX; j++)                q->next[j] = NULL;            p->next[id] = q;        }        p = p->next[id];        p->flag++;    }}int findTrie(char *str) //找出以str字符串為前綴的單詞的數(shù)量.{    int len = strlen(str);    Trie *p = root;    for(int i=0; i<len; i++)    {        int id = str[i]-'a';        p = p->next[id];        if(p == NULL)   //若為空集,表示不存以此為前綴的串            return 0;    }    return p->flag;}int main(){  //  freopen("input.txt","r",stdin);    root=(Trie *)malloc(sizeof(Trie)); //初始化    root->flag=0;    for(int i=0;i<MAX;i++){        root->next[i]=NULL;    }    char s[15];    while(gets(s)){        if(strlen(s)==0)            break;        createTrie(s);    }    while(~scanf("%s",s)){        printf("%d/n",findTrie(s));    }    return 0;}


發(fā)表評(píng)論 共有條評(píng)論
用戶名: 密碼:
驗(yàn)證碼: 匿名發(fā)表
主站蜘蛛池模板: 亚洲成人网一区 | 日韩av电影在线免费观看 | 激情视频在线播放 | 欧美毛片在线观看 | 午夜影院a | 欧美成人精品一区 | 调教小男生抽打尿孔嗯啊视频 | 国产精品久久久久久久久久iiiii | 国产成人综合在线观看 | 亚洲第一成人av | 日韩视频观看 | 久久国产精品久久久久久电车 | 亚洲人成在线播放网站 | 亚洲视频在线网 | 国产成人在线观看免费网站 | 91短视频在线视频 | 蜜桃网在线 | 精品999www| 日韩欧美精品中文字幕 | 一级黄色免费观看 | 欧美成人影院 | 亚洲第五色综合网 | 午夜视频久久久 | 黄色成年在线观看 | 国产一级淫片a级aaa | 久久久久久久91 | 欧美a区 | 日韩在线播放第一页 | 欧美一级黄色网 | 成年性羞羞视频免费观看无限 | wwwxxx视频| 国产精品刺激对白麻豆99 | 亚洲欧美一区二区三区在线观看 | 免费观看亚洲视频 | 免费观看又色又爽又黄的崩锅 | 日韩中文字幕三区 | 日韩av成人 | 玩偶姐姐在线观看免费 | 色淫网站免费视频 | 久久精品日韩一区 | 性欧美大战久久久久久久免费观看 |