HDU 1251 統計難題

來源:互聯網
上載者:User

標籤:trie樹

字典樹問題。

其實也可以用map水過去。但是想到我還要鞏固……

唉,還是老老實實用字典樹。不過 輸入中間的 空行 卡了我一下,RE……

果斷判斷*str AC了。


#include<cstdio>#include<cstring>#include<string>#include<queue>#include<algorithm>#include<queue>#include<map>#include<stack>#include<iostream>#include<list>#include<set>#include<cmath>#define INF 0x7fffffff#define eps 1e-6using namespace std;struct Trie{    int word[410000][26];    int sz;    int ex[4100000];    Trie()    {        sz=1;        memset(word,0,sizeof(word));        memset(ex,0,sizeof(ex));    }    void insert(char *s)    {        int u=0,c,len=strlen(s);        for(int i=0;i<len;i++)        {            c=s[i]-'a';            if(!word[u][c])            {                word[u][c]=sz++;            }            u=word[u][c];            ex[u]++;        }    }    int search(char *s)    {        int u=0,c,len=strlen(s);        for(int i=0;i<len;i++)        {            c=s[i]-'a';            if(word[u][c])                u=word[u][c];            else                return 0;        }        return ex[u];    }}wo;int main(){    char str[11];    while(gets(str),*str)        wo.insert(str);    while(scanf("%s",str)!=EOF)    {        int tmp=wo.search(str);        printf("%d\n",tmp);    }}


聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.