青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品

ACM___________________________

______________白白の屋
posts - 182, comments - 102, trackbacks - 0, articles - 0
<2010年8月>
25262728293031
1234567
891011121314
15161718192021
22232425262728
2930311234

常用鏈接

留言簿(24)

隨筆分類(332)

隨筆檔案(182)

FRIENDS

搜索

積分與排名

最新隨筆

最新評論

閱讀排行榜

評論排行榜

MiYu原創, 轉帖請注明 : 轉載自 ______________白白の屋    

 

題目地址 :

     http://acm.hdu.edu.cn/showproblem.php?pid=1247 

題目描述:

Hat’s Words

Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Others)
Total Submission(s): 1384    Accepted Submission(s): 506


Problem Description
A hat’s word is a word in the dictionary that is the concatenation of exactly two other words in the dictionary.
You are to find all the hat’s words in a dictionary.
 

Input
Standard input consists of a number of lowercase words, one per line, in alphabetical order. There will be no more than 50,000 words.
Only one case.
 

Output
Your output should contain all the hat’s words, one per line, in alphabetical order.
 

Sample Input
a ahat hat hatword hziee word
 

Sample Output
ahat hatword
 

題目分析 :

  

        字典樹的題目, 這個題的方法比較暴力,  在輸入的時候將每個單詞都加入字典樹,  并用數組將所有的串都存起來來.

在輸入完成后,  對每個單詞進行拆分, 也就是暴力枚舉單詞不同位置的前后部分, 看在字典樹中是否存在, 存在即輸出.

不過貌似數據比較弱, 說是按字典順序輸出, 但其實他的輸入本就是按字典順序輸入的, 所以將排序也面了 , 呵呵.

    另外,其實這題用STL 做更簡單, 當然追求效率除外.

trie 代碼:

 /*

MiYu原創, 轉帖請注明 : 轉載自 ______________白白の屋

          http://www.cnblog.com/MiYu

Author By : MiYu

Test      : 1

Program   : 1247

*/


#include <iostream>

#include <algorithm>

#include <string>

using namespace std;

typedef struct dictor DIC;

DIC *root = NULL;

struct dictor {

       dictor (){ exist = false; memset ( child , 0 , sizeof ( child ) ); }

       void insert ( char *ins );

       bool find ( const char *ins );

private:

       DIC *child[26];

       bool exist; 

};

void dictor::insert ( char *ins )

{

            DIC *cur = root,*now;

            int len = strlen ( ins );

            for ( int i = 0; i < len; ++ i )

            {

                  if ( cur->child[ ins[i] - 'a' ] != NULL ) 

                  {

                       cur = cur->child[ ins[i] - 'a' ];

                  }

                  else

                  {

                       now = new DIC;

                       cur->child[ ins[i] - 'a' ] = now;

                       cur = now;

                  }

            } 

            cur->exist = true;

}

bool dictor::find ( const char *ins )

{

            DIC *cur = root;

            int len = strlen ( ins );

            for ( int i = 0; i < len; ++ i )

            {

                 if ( cur->child[ ins[i] - 'a' ] != NULL )

                      cur = cur->child[ ins[i] - 'a' ];  

                 else

                      return false; 

            } 

            return cur->exist;

}

char words[50050][100];

char s1[100],s2[100];

DIC dict;

int main ()

{

    root = &dict;

    int n = 0;

    while ( scanf ( "%s",words[n] ) != EOF )

    {

            dict.insert ( words[n++] );

    }

    for ( int i = 0; i < n; ++ i )

    {

          int len = strlen ( words[i] );

          for ( int j = 1; j < len; ++ j )

          {

                memset ( s1, 0, sizeof ( s1 ) );

                memset ( s2, 0, sizeof ( s2 ) );

                strncpy ( s1, words[i], j );

                strcpy ( s2, words[i]+j );

                if ( dict.find ( s1 ) && dict.find ( s2 ) )

                {

                     printf ( "%s\n", words[i] );

                     break; 

                }

          }  

    }  

    //system ( "pause" );

    return 0;

}


STL  代碼 :

 

 /*

MiYu原創, 轉帖請注明 : 轉載自 ______________白白の屋

          http://www.cnblog.com/MiYu

Author By : MiYu

Test      : 2

Program   : 1247

*/


#include <iostream>

#include <string>

#include <map>

using namespace std;

map < string , int > mp;

string str[50005];

int main ()

{

    int n = 0;

    while ( cin >> str[n] ) mp[ str[n++] ] = 1;

    for ( int i = 0; i < n; ++ i )

    {

          unsigned len = str[i].size ();

          for ( unsigned j = 1; j < len; ++ j )

          {

               string s1 ( str[i], 0, j );

               string s2 ( str[i], j );

               if ( mp[s1] == 1 && mp[s2] == 1 )

               {

                    cout << str[i] << endl; 

                    break;

               }

          } 

    }

    return 0;

}


 

 

青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>
            亚洲激情电影在线| 国产精品夜夜嗨| 亚洲图片欧美一区| 欧美黄色精品| 麻豆精品精品国产自在97香蕉| 欧美丰满高潮xxxx喷水动漫| 精品不卡在线| 欧美专区在线观看| 亚洲一本视频| 亚洲精品偷拍| 亚洲国产精品t66y| 一本色道久久综合亚洲精品不卡 | 亚洲高清视频一区| 久久国产精品色婷婷| 99精品国产一区二区青青牛奶| 在线精品视频在线观看高清| 国产精品人人做人人爽人人添| 免费国产自线拍一欧美视频| 麻豆精品在线播放| 久久美女艺术照精彩视频福利播放| 亚洲电影免费观看高清| 久久国产加勒比精品无码| 亚洲一区影音先锋| 一本色道久久综合亚洲91| 亚洲国产99| 亚洲激情电影中文字幕| 99热免费精品在线观看| 亚洲一区二区三区高清| 日韩亚洲欧美在线观看| 日韩视频专区| 亚洲欧美中文日韩在线| 欧美在线亚洲综合一区| 久久综合狠狠综合久久综青草 | 久久精品成人欧美大片古装| 久久五月婷婷丁香社区| 亚洲电影在线| 夜夜爽夜夜爽精品视频| 亚欧美中日韩视频| 麻豆视频一区二区| 欧美午夜在线观看| 精品88久久久久88久久久| 亚洲人久久久| 欧美一区二区三区免费视| 老司机成人网| 亚洲国产成人精品视频| 欧美国产日韩精品免费观看| 欧美一区二区观看视频| 激情视频亚洲| 久久精品国产69国产精品亚洲 | 午夜欧美精品久久久久久久| 国产一级揄自揄精品视频| 欧美一区二区三区免费看 | 亚洲日本成人网| 一区二区三区四区五区精品| 欧美日韩高清在线| 亚洲系列中文字幕| 亚洲欧美激情四射在线日| 黑人中文字幕一区二区三区 | 久久在线免费视频| 亚洲免费成人| 禁断一区二区三区在线 | 欧美新色视频| 久久爱另类一区二区小说| 亚洲精品乱码久久久久久蜜桃麻豆 | 裸体一区二区三区| 一区二区日韩精品| 蜜桃伊人久久| 久久国产婷婷国产香蕉| 亚洲动漫精品| 欧美一级淫片aaaaaaa视频| 久久精品一二三区| 欧美日韩在线免费视频| 激情文学综合丁香| 亚洲欧美国产精品专区久久| 亚洲免费小视频| 欧美成人亚洲成人日韩成人| 在线亚洲成人| 久久久久久成人| 欧美伦理影院| 国产视频亚洲精品| 亚洲高清视频一区| 亚洲女同精品视频| 亚洲精品孕妇| 日韩视频一区二区在线观看| 欧美激情亚洲| 亚洲一区二区免费在线| 亚洲作爱视频| 蜜桃av综合| 欧美二区不卡| 免费视频最近日韩| 蜜桃av久久久亚洲精品| 欧美在线亚洲综合一区| 男女精品视频| 亚洲乱亚洲高清| 欧美大片在线看| 欧美日韩在线直播| 亚洲综合精品一区二区| 久久国产日韩| 欧美久久电影| 亚洲在线免费| 久久影音先锋| 亚洲调教视频在线观看| 亚洲欧美日韩一区二区三区在线| 国产精品国产三级国产aⅴ无密码 国产精品国产三级国产aⅴ入口 | 亚洲欧美日韩电影| 欧美性猛交xxxx乱大交退制版| 久久精品最新地址| 久久精品人人做人人爽电影蜜月 | 1024日韩| 亚洲精品一区中文| 亚洲国产精品传媒在线观看 | 黑人巨大精品欧美一区二区| 免费日韩av片| 欧美久久久久中文字幕| 欧美影院在线播放| 欧美激情欧美狂野欧美精品| 欧美精品久久99| 欧美在线观看你懂的| 亚洲国产精品小视频| 国产精品成人午夜| 蜜桃久久av一区| 欧美精品系列| 亚洲成人在线视频网站| 久久精品国产亚洲精品| 在线视频亚洲一区| 久久精品主播| 久久日韩精品| 麻豆精品精品国产自在97香蕉| 久久激情视频久久| 久久精品女人| 久久精品国产免费看久久精品| 欧美一区二区成人6969| 国产精品区二区三区日本| 亚洲乱码精品一二三四区日韩在线 | 嫩草成人www欧美| 欧美成人在线网站| 欧美成人黑人xx视频免费观看| 国产精品日韩电影| 久久激情久久| 国产精品亚洲综合天堂夜夜 | 久久国产免费| 欧美亚一区二区| 久久精品免费看| 国产三级欧美三级| 欧美电影免费观看高清| 激情六月婷婷久久| 亚洲视频欧洲视频| 一本综合精品| 欧美日韩精品高清| 欧美a级在线| 亚洲精品国产无天堂网2021| 亚洲午夜三级在线| 亚洲欧美国产三级| 欧美日韩综合视频| 亚洲综合三区| 欧美精品一区二区三区蜜臀| 欧美ab在线视频| 亚洲欧美日韩综合aⅴ视频| 亚洲国产精品一区二区www| 欧美日韩亚洲一区| 久久嫩草精品久久久精品一| 最新成人在线| 麻豆精品视频| 欧美一级成年大片在线观看| 国产精品二区影院| 欧美日韩午夜在线| 久久综合九色99| 亚洲一区二区三区免费观看| 久久九九国产精品| 欧美一区二区三区四区夜夜大片 | 欧美日韩亚洲一区二区| 嫩草国产精品入口| 欧美一区在线看| 欧美一级片一区| 日韩视频在线免费观看| 亚洲激情成人| 欧美1级日本1级| 欧美风情在线观看| 欧美大片在线观看一区| 久久乐国产精品| 久久男人av资源网站| 亚洲自拍三区| 欧美亚洲免费在线| 女主播福利一区| 久久久久久久久岛国免费| 一本色道久久综合狠狠躁篇的优点| 亚洲精品网址在线观看| 免费久久久一本精品久久区| 麻豆成人在线观看| 麻豆91精品| 最近中文字幕日韩精品| 亚洲国产精品一区二区三区| 亚洲福利在线视频| 亚洲成色777777女色窝| 亚洲精品视频一区二区三区| 欧美高清在线视频观看不卡| 午夜一区二区三区在线观看 | 欧美一区二区三区男人的天堂 | 亚洲精品日韩欧美| 日韩亚洲欧美一区|