• <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>

            巢穴

            about:blank

            P3080

            枚舉+kmp..再不練kmp都忘了..orz
            wa了一次..注意一下求出的串要最小的那個

            #include <iostream>
            #include 
            <string>
            //#include <fstream>
            using namespace std;
            //ifstream fin("t3080.in");
            const int MAXN=100;
            int k;
            int n;
            string str[MAXN];
            string s_,result;
            int p[MAXN];
            void match_self()
            {
                 memset(p,
            sizeof(p),0);
                 p[
            0]=-1;
                 
            int x=-1;
                 
            for (int i=1;i<s_.length();i++)
                 
            {
                     
            while (x>-1&&s_[x+1]!=s_[i]) x=p[x];
                     
            if (s_[x+1]==s_[i]) x++;
                     p[i]
            =x;
                 }

            }

            bool match(string s)
            {
                 
            int x=-1;
                 
            for (int i=0;i<s.length();i++)
                 
            {
                  
            while (x>-1&&s_[x+1]!=s[i]) x=p[x];
                  
            if (s_[x+1]==s[i]) x++;
                  
            if (x==s_.length()-1return true;
                  
            //p[i]=x;
                 }

                 
            return false;
            }

            int main()
            {
                cin
            >>k;
                
            while(k--)
                
            {
                 cin
            >>n;
                 
            bool ok=false;
                 
            for (int i=1;i<=n;i++)
                 
            {
                     cin
            >>str[i];
                 }

                 
            string st=str[1];
                 
            for (int i=st.length();(i>=3)&&(ok==false);i--)
                 
            {
                  
            for (int j=0;(j<=i+j-1)&&(i+j-1<st.length());j++)
                  
            {
                   s_
            =st.substr(j,i);
                   match_self();
                   
            int count=0;
                   
            for (int k=2;k<=n;k++)
                   
            {
                    
            if (match(str[k])) count++;
                   }

                   
            if (n-1==count)
                   
            {
                    
            if (!ok) result=s_; else if (result>s_) result=s_;
                    ok
            =true;
                   }

                  }

                 }

                 
            if (ok)
                 
            {
                  cout
            <<result<<endl;
                 }

                 
            else
                 
            {
                  cout
            <<"no significant commonalities"<<endl;
                 }

                }

                system(
            "pause");
                
            return 0;
            }

            posted on 2009-10-19 21:30 Vincent 閱讀(99) 評論(0)  編輯 收藏 引用 所屬分類: 數據結構與算法

            亚洲中文字幕无码久久2017| 国产精品久久久久久久久久免费| 无码人妻久久一区二区三区蜜桃| 国产一区二区久久久| 岛国搬运www久久| 亚洲精品无码久久久| 免费久久人人爽人人爽av| 久久国产成人精品麻豆| 91精品国产综合久久久久久| 久久久久久久亚洲Av无码| 久久久久国产| 亚洲国产精品无码久久九九| 久久久久99精品成人片三人毛片 | 久久这里有精品| 久久影院久久香蕉国产线看观看| 女同久久| 亚洲精品无码久久千人斩| 久久ZYZ资源站无码中文动漫| 99久久精品国产高清一区二区 | 久久99国产一区二区三区| 精品国产青草久久久久福利| 青青久久精品国产免费看| 伊人久久大香线蕉av不变影院| 无码AV波多野结衣久久| AA级片免费看视频久久| 久久久久国产精品嫩草影院| 99久久免费国产精品热| 久久久精品人妻无码专区不卡| 精品国产乱码久久久久久人妻 | 一级做a爰片久久毛片16| 性做久久久久久久久浪潮| 日本久久久久亚洲中字幕| 久久国产成人| 91精品国产91久久久久福利 | 久久精品国产72国产精福利| 久久久久亚洲AV无码专区首JN | 久久强奷乱码老熟女网站| 国产三级观看久久| 国产精品久久久久AV福利动漫| 日批日出水久久亚洲精品tv| 国产国产成人精品久久|