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

posts - 43,  comments - 9,  trackbacks - 0
后綴數組,KMP擴展,自動機
題目要求4000個長度為200的字串的最長公共子串.
只需選一個串作為基串, 枚舉它的所有后綴串S[i..len], 求出其它串與這個子串的LCP. 最后選最大的輸出.
關于求串S與串T所有后綴的LCP, 林希德的論文講了擴展KMP算法. 不過我想出另一種方法:
把S和T直接連接得到新串U. 按正常KMP的方法求U的next數組, 不過當p指向U[len[S]+1]即原T串的首字母時, 直接將此位的next置為0.
最后min(len[S], next[k]) 就是串T[1..(k-len[S])]與串S的lcp長度.

代碼如下:

 1#include <iostream>
 2using namespace std;
 3
 4char wd[4000][201];
 5int cnt[201][201], vis[201][201];
 6char ss[401];
 7int next[401];
 8int N;
 9
10bool readin()
11{
12  scanf("%d",&N);
13  if(N==0)return false;
14  
15  for(int i=0; i<N; i++)
16    scanf("%s",wd[i]);
17  return true;
18}

19
20int mycmp(char *s1, int l1, char *s2, int l2)
21{
22  if(l1!=l2) return (l2-l1);
23  while(--l1 && *s1==*s2) s1++, s2++;
24  return (*s1-*s2);
25}

26
27void mycpy(char *s1, char *s2, int l)
28{
29  while(l--*(s1++)=*(s2++);
30  *s1=0;
31}

32
33void solve()
34{
35  memset(cnt,0,sizeof(cnt));
36  memset(vis,0,sizeof(vis));
37  
38  int l0=strlen(wd[0]);
39  strcpy(ss,wd[0]);
40  char ans[201]="";
41  
42  for(int p=0; p<l0; p++){
43    char *s=&ss[p];
44    for(int i=1; i<N; i++){
45      strcpy(&ss[l0], wd[i]); //連接兩個串
46      int l1=l0-p+strlen(wd[i]);
47      next[0]=-1;
48      int p0=-1, p1=0;
49      while(p1<l1){
50        while(p0>=0 && s[p0]!=s[p1])
51          p0=next[p0];
52        next[++p1]=++p0;
53        if(p1==l0-p) //此位置0
54          next[p1]=0, p0=0;
55        if(p1>=l0-p){
56          int len=min(l0-p, next[p1]);
57          if(vis[p][p+len-1]!=i)
58            vis[p][p+len-1]=i, cnt[p][p+len-1]++;
59        }

60      }

61    }

62    
63    for(int j=l0-1; j>=p; j--){
64      if(cnt[p][j]==N-1){
65        if(mycmp(&ss[p], j-p+1, ans, strlen(ans))<0)
66          mycpy(ans, &ss[p], j-p+1);
67      }

68    }

69  }

70  
71  if(ans[0]==0)
72    puts("IDENTITY LOST");
73  else
74    puts(ans);
75}

76
77int main()
78{
79  while(readin()){
80    solve();
81  }

82}

83


posted on 2009-07-31 13:46 wolf5x 閱讀(718) 評論(0)  編輯 收藏 引用 所屬分類: acm_icpc
<2009年7月>
2829301234
567891011
12131415161718
19202122232425
2627282930311
2345678

"Do not spend all your time on training or studying - this way you will probably become very exhausted and unwilling to compete more. Whatever you do - have fun. Once you find programming is no fun anymore – drop it. Play soccer, find a girlfriend, study something not related to programming, just live a life - programming contests are only programming contests, and nothing more. Don't let them become your life - for your life is much more interesting and colorful." -- Petr

留言簿(3)

隨筆分類(59)

隨筆檔案(43)

cows

搜索

  •  

最新評論

評論排行榜

青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <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>
            欧美精品尤物在线| 日韩一级黄色大片| 亚洲国产三级| 亚洲电影一级黄| 91久久视频| 亚洲精品免费一区二区三区| 夜夜嗨av一区二区三区中文字幕| 一区二区三区成人| 午夜一区二区三区在线观看 | 亚洲精品在线观看免费| 亚洲免费观看高清完整版在线观看| 噜噜噜91成人网| 欧美一区二区三区免费观看视频| 午夜视频一区| 久久婷婷麻豆| 欧美三级中文字幕在线观看| 国产美女精品人人做人人爽| 亚洲福利在线视频| 亚洲午夜电影在线观看| 久久精品夜夜夜夜久久| 亚洲国产女人aaa毛片在线| 亚洲国产高清aⅴ视频| 亚洲片国产一区一级在线观看| 在线视频精品一| 久久九九久精品国产免费直播 | 亚洲嫩草精品久久| 久久精品免费看| 亚洲高清成人| 欧美亚洲三区| 欧美日韩在线看| ●精品国产综合乱码久久久久| 亚洲影院色在线观看免费| 老司机成人网| 亚洲男人的天堂在线| 欧美极品影院| 一区二区三区自拍| 欧美一区91| 在线一区二区三区四区五区| 欧美电影免费观看高清完整版| 国产日韩精品一区观看| 亚洲精品一区二区在线观看| 久久精品国产一区二区电影| 夜久久久久久| 欧美精品日韩一本| 黄色成人精品网站| 久久xxxx| 亚洲欧美日韩精品| 国产精品激情偷乱一区二区∴| 91久久午夜| 欧美成人精品高清在线播放| 久久国产一区| 国色天香一区二区| 久久久青草婷婷精品综合日韩| 在线亚洲一区二区| 国产精品av久久久久久麻豆网| 亚洲经典自拍| 亚洲丶国产丶欧美一区二区三区 | 国产一区二区三区不卡在线观看| 久久精品国产亚洲5555| 男人天堂欧美日韩| 久久久青草婷婷精品综合日韩| 国产精品一区二区三区久久| 亚洲一区二区三区777| 亚洲人线精品午夜| 欧美精品成人一区二区在线观看| 亚洲国产另类 国产精品国产免费| 久久综合给合久久狠狠色| 欧美一区二区三区四区在线 | 国产精品看片你懂得| 亚洲婷婷综合色高清在线| 99精品视频免费观看| 国产精品卡一卡二| 久久精品观看| 另类激情亚洲| 亚洲精品国产精品国自产观看| 亚洲精品1区| 国产精品成人观看视频国产奇米| 亚洲综合精品四区| 久久国内精品视频| 亚洲三级电影全部在线观看高清| 91久久久久久| 国产精品久久久久秋霞鲁丝 | 亚洲国产成人精品久久| 欧美激情精品| 国产精品v日韩精品v欧美精品网站| 亚洲欧美激情一区| 欧美中文在线视频| 亚洲欧洲综合另类在线| 一本久久综合| 国产综合av| 亚洲成色777777女色窝| 欧美视频成人| 免费在线观看精品| 国产精品高清网站| 欧美电影电视剧在线观看| 欧美日韩亚洲天堂| 久久久久国产精品午夜一区| 欧美高清成人| 久久久噜噜噜久噜久久 | 亚洲电影免费在线观看| 99re视频这里只有精品| 韩日视频一区| 一区二区电影免费在线观看| 激情综合五月天| 亚洲性视频网站| 亚洲乱码国产乱码精品精| 销魂美女一区二区三区视频在线| 亚洲精品网站在线播放gif| 欧美亚洲在线视频| 一区二区三区免费网站| 鲁鲁狠狠狠7777一区二区| 亚洲欧美中文日韩v在线观看| 男人的天堂成人在线| 久久久精品国产一区二区三区 | 亚洲精品欧洲| 亚洲盗摄视频| 欧美一区二区在线| 亚洲女同同性videoxma| 欧美男人的天堂| 欧美二区在线看| 国产一区在线看| 亚洲欧美日韩国产综合在线 | 一区二区三区高清视频在线观看| 欧美在线一二三| 午夜伦理片一区| 欧美偷拍一区二区| 亚洲免费观看在线观看| 亚洲精品日韩久久| 免费观看一级特黄欧美大片| 久久中文欧美| 精品成人一区二区三区| 久久精品一本| 美女精品视频一区| 永久域名在线精品| 久热成人在线视频| 欧美高清不卡在线| 亚洲日本中文字幕| 欧美国产激情| 亚洲老板91色精品久久| 一本色道久久综合亚洲二区三区| 免费亚洲电影| 亚洲欧洲一区二区三区在线观看| 亚洲精品永久免费精品| 欧美日韩hd| 国产精品99久久久久久久久久久久| 在线视频亚洲| 国产精品呻吟| 欧美中文字幕视频| 免费亚洲一区二区| 日韩午夜精品视频| 国产精品成人免费精品自在线观看| 在线亚洲欧美专区二区| 欧美一级网站| 在线成人激情视频| 欧美精品在欧美一区二区少妇| 一区二区毛片| 久久久一区二区三区| 亚洲国产精品久久91精品| 欧美精品一区二区三区视频 | 欧美国产一区二区| 亚洲另类自拍| 性娇小13――14欧美| 国内精品久久久久久久影视麻豆| 久久亚洲视频| 中日韩美女免费视频网站在线观看| 午夜免费电影一区在线观看| 雨宫琴音一区二区在线| 欧美日韩国产一区精品一区| 一区二区三区 在线观看视| 久久精品国产亚洲一区二区三区| 亚洲国产乱码最新视频| 国产精品久久久久aaaa樱花| 久久综合给合| 在线亚洲成人| 欧美激情视频免费观看| 欧美一区二区免费| 亚洲精品日韩在线| 国产一区二区丝袜高跟鞋图片| 欧美国产日本韩| 欧美jizzhd精品欧美巨大免费| 亚洲第一综合天堂另类专| 欧美日韩在线观看一区二区三区 | 国产精品老女人精品视频| 久久成人免费网| 日韩亚洲欧美中文三级| 久久手机精品视频| 中日韩午夜理伦电影免费| 狠狠入ady亚洲精品| 国产精品久久久久久久久果冻传媒| 久久夜精品va视频免费观看| 亚洲午夜精品一区二区| 亚洲人成网站在线观看播放| 久久婷婷麻豆| 欧美一区二区三区精品| 国产精品99久久久久久久女警 | 亚洲日本成人在线观看| 国产亚洲一区二区在线观看| 欧美日韩中文字幕日韩欧美| 欧美福利小视频| 欧美11—12娇小xxxx|