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

ACM___________________________

______________白白の屋
posts - 182, comments - 102, trackbacks - 0, articles - 0
<2025年12月>
30123456
78910111213
14151617181920
21222324252627
28293031123
45678910

常用鏈接

留言簿(24)

隨筆分類(lèi)(332)

隨筆檔案(182)

FRIENDS

搜索

積分與排名

最新隨筆

最新評(píng)論

閱讀排行榜

評(píng)論排行榜

MiYu原創(chuàng), 轉(zhuǎn)帖請(qǐng)注明 : 轉(zhuǎn)載自 ______________白白の屋    

 

題目地址:

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

題目描述:

Phone List

Time Limit: 3000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others)
Total Submission(s): 1733    Accepted Submission(s): 572


Problem Description
Given a list of phone numbers, determine if it is consistent in the sense that no number is the prefix of another. Let’s say the phone catalogue listed these numbers:
1. Emergency 911
2. Alice 97 625 999
3. Bob 91 12 54 26
In this case, it’s not possible to call Bob, because the central would direct your call to the emergency line as soon as you had dialled the first three digits of Bob’s phone number. So this list would not be consistent.
 

Input
The first line of input gives a single integer, 1 <= t <= 40, the number of test cases. Each test case starts with n, the number of phone numbers, on a separate line, 1 <= n <= 10000. Then follows n lines with one unique phone number on each line. A phone number is a sequence of at most ten digits.
 

Output
For each test case, output “YES” if the list is consistent, or “NO” otherwise.
 

Sample Input
2 3 911 97625999 91125426 5 113 12340 123440 12345 98346
 

Sample Output
NO YES
 

 

  

題目分析:

   這個(gè)題有很多種方法, 大牛用靜態(tài)字典樹(shù)....哥不會(huì),只會(huì)動(dòng)態(tài)的, 結(jié)果  MLE 了20幾次...  , 很糾結(jié)的是,我的結(jié)構(gòu)體用的是局部變量, 到現(xiàn)在還是

沒(méi)明白為什么他不會(huì)自動(dòng)釋放...最后加了動(dòng)態(tài)數(shù)組的釋放才A掉...............  然后嘗試了一下 STL ...比動(dòng)態(tài)字典還快......

 

動(dòng)態(tài)字典代碼:

/*

MiYu原創(chuàng), 轉(zhuǎn)帖請(qǐng)注明 : 轉(zhuǎn)載自 ______________白白の屋

          http://www.cnblog.com/MiYu

Author By : MiYu

Test      : 1

Program   : 1671

*/


#include <iostream>

using namespace std;

typedef struct dict DIC;

int f = 0;

DIC *root = NULL;

struct dict {

       dict (){ n = 0; flag = false;memset ( child , 0 , sizeof ( child ) ); }

       ~dict () { del ( root ); }

       static void insert ( char *ins )

       {

            DIC *cur = root,*now;

            int len = strlen ( ins );

            if ( len == 0 )  return ;

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

            {

                  if ( cur->flag || ( i == len - 1 && cur->child[ ins[i] - '0' ] != NULL ) )

                       f = 1;

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

                  {

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

                       cur->n ++; 

                  }

                  else

                  {

                       now = new DIC;

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

                       now->n ++;

                       cur = now;

                  }

            } 

            cur->flag = true;

       }

       void del ( DIC * node )

       {

            if ( node == NULL )

                return;

            for ( int i = 0; i != 10; ++ i )

            {

                 if ( node->child[i] != NULL )

                    del ( node->child[i] ); 

            } 

            free ( node );

       }

private:

       DIC *child[10];

       int n; 

       bool flag;

};

char num[11];

int main ()

{

    int T,N;

    scanf ( "%d",&T );

    while ( T -- )

    {

          DIC dict;

          root = &dict;

          f = 0;

          scanf ( "%d",&N );

          for ( int i = 0; i != N; ++ i )

          {

                 scanf ( "%s",num );  

                 if ( f == 0 ) dict.insert ( num );            

          }

          puts ( f ? "NO" : "YES" ); 

    } 

    return 0;

}

 

STL 代碼 :

/*

MiYu原創(chuàng), 轉(zhuǎn)帖請(qǐng)注明 : 轉(zhuǎn)載自 ______________白白の屋

          http://www.cnblog.com/MiYu

Author By : MiYu

Test      :

Program   :

*/


#include <iostream>

#include <vector>

#include <string>

#include <algorithm>

using namespace std;

char num[11];

bool cmp ( const string &a, const string &b )

{

     return strcmp ( a.c_str(), b.c_str() ) < 0; 

}

int main ()

{

    int T,N;

    scanf ( "%d",&T );

    while ( T -- )

    {

          int f = 0;

          scanf ( "%d",&N );

          vector < string > vec;

          for ( int i = 0; i != N; ++ i )

          {

                 scanf ( "%s",num );  

                 vec.push_back ( string ( num ) );           

          }

          sort ( vec.begin(), vec.end(),cmp1 );

          for ( int i = 1; i < N; ++ i )

          {

                if ( vec[i].find ( vec[i-1] ) == 0 )

                {

                     f = 1; 

                     break;

                }

          }

          puts ( f ? "NO" : "YES" ); 

    } 

    return 0;

}

 

AMB 大牛的 靜態(tài)代碼 :

 

  1. #include<cstdio>
  2. #include<cstring>
  3. using namespace std;
  4. const int MAXNODE=500000;
  5. const int BRANCH=10;

  6. int Tree[MAXNODE][BRANCH],SIZE;
  7. bool Key[MAXNODE];
  8. bool Insert(char *str) {
  9.     int Node=0;bool tof=false;
  10.     for (int i=0;str[i];i++){
  11.         int c=str[i]-'0';
  12.         if(Tree[Node][c]==-1){
  13.             Tree[Node][c]=++SIZE;tof=true;
  14.             memset(Tree[SIZE],-1,sizeof(Tree[SIZE]));
  15.         }
  16.         if(Key[Node]) return false;
  17.         Node=Tree[Node][c];
  18.     }
  19.     Key[Node]=true;
  20.     return tof;
  21. }

  22. void Trie(){
  23.     memset(Tree[0],-1,sizeof(Tree[0]));
  24.     SIZE=0;
  25. }

  26. char str[15];
  27. int main()
  28. {
  29.     int t,n;bool tof;
  30.     scanf("%d",&t);
  31.     while(t--){
  32.         memset(Key,false,sizeof(Key));
  33.         Trie();tof=true;
  34.         scanf("%d",&n);
  35.         for(int i=0;i<n;i++){
  36.             scanf("%s",str);
  37.             if(tof){
  38.                 tof=Insert(str);
  39.             }
  40.         }
  41.         if(tof) puts("YES");
  42.         else puts("NO");
  43.     }
  44. }

 

 

 

青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <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>
            欧美a级理论片| 一本色道久久综合精品竹菊 | av成人福利| 一本一本久久a久久精品综合妖精 一本一本久久a久久精品综合麻豆 | 欧美激情一二三区| 欧美亚洲系列| 亚洲精品欧美日韩| 久久久久综合网| 激情一区二区三区| 欧美日本中文字幕| 一本色道久久综合亚洲精品不卡 | 国产精品成人久久久久| 亚洲自拍偷拍福利| 久久精品免费| 亚洲激情在线视频| 国产在线成人| 久久久久中文| 亚洲日本免费| 亚洲黄色高清| 亚洲精品在线观看视频| 亚洲高清不卡av| 欧美裸体一区二区三区| 亚洲视频欧洲视频| 91久久精品国产91久久性色| 久久先锋资源| 久久久久久穴| 亚洲第一区在线观看| 在线午夜精品| 99精品热视频| 国产自产女人91一区在线观看| 欧美三级免费| 久久aⅴ国产欧美74aaa| 亚洲女与黑人做爰| 久久精品99国产精品酒店日本| 欧美国产欧美亚洲国产日韩mv天天看完整| 欧美中文在线观看| 欧美一区二区在线免费播放| 亚洲狠狠婷婷| 亚洲综合精品一区二区| 今天的高清视频免费播放成人| 亚洲国产合集| 1024日韩| 91久久线看在观草草青青| 亚洲国产裸拍裸体视频在线观看乱了中文| 国产综合欧美在线看| 亚洲精品一区在线| 亚洲精品影院| 欧美在线视频在线播放完整版免费观看 | 亚洲国产日韩一区二区| 亚洲在线免费观看| 午夜老司机精品| 亚洲一区二区三区四区五区黄 | 影音先锋中文字幕一区二区| 欧美色网在线| 激情成人综合网| 伊人久久综合| 亚洲一区不卡| 羞羞色国产精品| 久久久精品五月天| 亚洲自拍高清| 香蕉久久夜色| 最近中文字幕mv在线一区二区三区四区| 欧美ab在线视频| 91久久线看在观草草青青| 午夜一区二区三区在线观看| 一本大道久久a久久精品综合| 久久精品视频亚洲| 午夜精品区一区二区三| 久久精品国产欧美激情| 国产精品家教| 亚洲美女在线国产| 亚洲一区二区少妇| 亚洲性图久久| 欧美韩日视频| 午夜精品久久久久久久99热浪潮| 亚洲综合首页| 久久美女性网| 欧美与欧洲交xxxx免费观看| 久久本道综合色狠狠五月| 久久午夜精品一区二区| 国产日产亚洲精品系列| 国产精品激情偷乱一区二区∴| 亚洲韩国青草视频| 久久综合九色欧美综合狠狠| 亚洲激情偷拍| 久久亚洲精品视频| 精品69视频一区二区三区| 久久aⅴ国产紧身牛仔裤| 一区二区三区视频观看| 欧美日韩卡一卡二| 欧美日韩亚洲综合| 亚洲九九爱视频| 欧美一级理论片| 亚洲一区二区在线免费观看视频| 久久蜜臀精品av| 尤物yw午夜国产精品视频| 久久久久久久久蜜桃| 亚洲欧美日韩精品一区二区| 麻豆精品视频在线观看| 欧美日韩天堂| 中文精品视频一区二区在线观看| 中文精品在线| 久久亚洲精选| 久久久999精品视频| 欧美日韩一区三区四区| 一区二区三区视频观看| 久热国产精品视频| 免费视频一区二区三区在线观看| 免费成人黄色| 久久人人97超碰精品888| 国产精品激情偷乱一区二区∴| 亚洲国产欧美日韩精品| 欧美一级大片在线免费观看| 新67194成人永久网站| 国产视频精品va久久久久久| 一区二区在线免费观看| 欧美a级大片| 欧美高清不卡| 国产精品v欧美精品v日韩精品| 国产精品日韩欧美| 亚洲图片欧美午夜| 亚洲天堂免费观看| 久久久久久久久久久一区| 欧美亚洲第一页| 欧美制服丝袜| 久久综合九色99| 欧美日韩精品二区| 亚洲综合三区| 久久精品国产精品亚洲| 国产人久久人人人人爽| 蜜臀91精品一区二区三区| 性伦欧美刺激片在线观看| 欧美午夜剧场| 久久久久欧美精品| 性欧美18~19sex高清播放| 国产精品黄视频| 久久九九全国免费精品观看| 鲁大师影院一区二区三区| 狠狠色综合日日| 亚洲天堂网在线观看| 亚洲一区日本| 亚洲高清123| 欧美风情在线| 亚洲综合色激情五月| 欧美午夜视频| 久久这里有精品15一区二区三区| 欧美承认网站| 亚洲精品国产精品国自产在线| 欧美成人四级电影| 国产精品v亚洲精品v日韩精品| 久久亚洲精品一区| 欧美三区在线视频| 久久午夜羞羞影院免费观看| 久久激情综合| 伊人精品视频| 这里只有精品丝袜| 亚洲福利视频一区二区| 亚洲一区不卡| 亚洲免费成人av电影| 亚洲欧洲日本专区| 欧美日韩国产123区| 亚洲一区二区在线观看视频| 久久久国产精品一区二区三区| 在线中文字幕一区| 久久女同互慰一区二区三区| 午夜精品一区二区三区在线视 | 午夜亚洲性色视频| 一区二区免费在线观看| 久久久伊人欧美| 亚洲黄色免费网站| 午夜国产精品视频| 樱花yy私人影院亚洲| 亚洲视频在线观看一区| 亚洲精品久久在线| a91a精品视频在线观看| 亚洲国产另类精品专区 | 欧美激情一二三区| 猫咪成人在线观看| 欧美插天视频在线播放| 久久精品中文字幕免费mv| 久久一区激情| 久久久www成人免费精品| 欧美午夜电影一区| 久久久久久久久久久久久久一区 | 亚洲激情电影在线| 在线观看精品| 日韩午夜在线电影| 欧美日本在线观看| 午夜精品久久久久久久久久久久久| 欧美一级一区| 欧美怡红院视频一区二区三区| 欧美日韩中国免费专区在线看| 久久精品国产清高在天天线| 另类国产ts人妖高潮视频| 久久一区欧美| 欧美日韩免费网站| 老司机免费视频一区二区三区| 国产美女精品在线| 亚洲激情社区| 亚洲精品国产精品乱码不99 |