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

poj 1509 Glass Beads 字符串最小表示

   赤裸裸的字符串最小表示題。所謂字符串最小表示指的是給定一個字符串,假設其可以循環移
位,問循環左移多少位能夠得到最小的字符串。
   算法即是周源的最小表示法,搜索可以找到相關論文和ppt。
   該算法其實也不是太復雜,思路可以這樣理解。假設原字符串為s,設s1 = s + s; s2 = s1循
環左移1位;現在處理s1和s2,實際寫程序的時候可以通過下標偏移和取模得到s1和s2,而并不需
要生成。
   處理過程是這樣的,設i和j分別指向s1和s2的開頭。我們的目的是找到這樣的i和j,假設k是s的
長度,滿足條件s1[i,i+k-1] = s2[j,j+k-1] 并且s1[i,i+k-1] 是所有滿足條件的字符串中最小的
字符串,如果有多個這樣的s1[i,i+k-1] 那么我們希望i最小。
   其實這個算法主要是做了一個優化,從而把時間搞成線性的。比如,對于當前的i和j,我們一直
進行匹配,也就是s1[i,i+k] = s2[j,j+k] 一直滿足,突然到了一個位置s1[i+k]  != s2[j+k]了,
現在我們需要改變i和j了。但是,我們不能只是++i或者++j。而是根據s1[i+k]>s2[j+k]的話i =
i + k + 1,否則j = j + k + 1。這樣的瞬移i或者j就能夠保證復雜度是線性的了。
   問題是如何證明可以這樣的瞬移。其實,說穿了也很簡單。因為s1[i,i+k - 1] = s2[j,j+k -1]
是滿足的,只是到了s1[i+k]和s2[j+k]才出現問題了。假如s1[i+k]>s2[j+k],那么我們改變i為
區間[i+1,i+k]中任何一個值m都不可能得到我們想要的答案,這是因為我們總可以在s2中找到相應
的比s1[m,m+k-1]小的字符串s2[j+m-i,j+m-i+k-1],因為有s1[i+k]>s2[j+k]。
   同樣對于s1[i+k]<s2[j+k]的情況。
   文字可能描述的不是很清楚。看PPT能夠根據圖進行分析。

   代碼如下:
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <algorithm>
#include <string>
#include <iostream>
using namespace std;

int GetMin(string& str)
{
    int nSize = str.size();
    int i = 0, j = 1, k = 0;
    
    while (i < nSize && j < nSize && k < nSize)
    {
        char chDif = str[(i + k) % nSize]
                    - str[(j + k) % nSize];
        if (!chDif) ++k;
        else
        {
            if (chDif > 0) i = i + k + 1;
            else j = j + k + 1;
            if (i == j) ++j;
            k = 0;
        }
    }
    return min(i, j);
}

int main()
{
    string str;
    int nN;
    
    scanf("%d", &nN);
    while (nN--)
    {
        cin >> str;
        printf("%d\n", GetMin(str) + 1);
    }
    
    return 0;
}

posted on 2012-10-19 19:44 yx 閱讀(1081) 評論(0)  編輯 收藏 引用 所屬分類: 字符串

<2012年10月>
30123456
78910111213
14151617181920
21222324252627
28293031123
45678910

導航

統計

公告

常用鏈接

留言簿(3)

隨筆分類

隨筆檔案

me

好友

同學

網友

搜索

最新評論

閱讀排行榜

評論排行榜

青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <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>
            久久亚洲美女| 欧美高清在线一区| 久久国产一区二区| 欧美激情在线免费观看| 小辣椒精品导航| 国产精品久久午夜夜伦鲁鲁| 日韩视频一区二区三区在线播放| 亚洲精品美女在线观看播放| 久久在线观看视频| 欧美尤物巨大精品爽| 国产伦一区二区三区色一情| 亚洲欧美怡红院| 亚洲网站在线播放| 国产精品激情av在线播放| 亚洲一区二区日本| 亚洲网站视频福利| 国产区日韩欧美| 久久久久国产成人精品亚洲午夜| 亚洲欧美国产制服动漫| 国产欧美精品在线| 久久精品综合网| 久久久久国产精品www | 在线精品视频一区二区| 亚洲欧美电影在线观看| 亚洲视频在线播放| 国产麻豆精品久久一二三| 久久精品人人| 亚洲欧洲一区| 亚洲福利免费| 欧美精品一卡| 亚洲一区二区免费| 久久精品一区中文字幕| 亚洲激情电影在线| 一本色道久久| 好看的日韩av电影| 亚洲国产综合91精品麻豆| 欧美日韩八区| 久久国产婷婷国产香蕉| 欧美 日韩 国产 一区| 亚洲一区三区电影在线观看| 欧美亚洲综合网| 亚洲区一区二区三区| 一级成人国产| 在线看成人片| 亚洲午夜免费视频| 亚洲电影一级黄| 一区二区三区导航| 136国产福利精品导航网址| 亚洲美女诱惑| 一区二区亚洲欧洲国产日韩| 日韩亚洲欧美成人| 一区二区三区亚洲| 在线亚洲伦理| 最新亚洲视频| 欧美一级片久久久久久久| 亚洲剧情一区二区| 欧美影院精品一区| 亚洲一区二区三区四区五区午夜| 久久久久久久97| 亚洲欧美另类在线| 欧美国产一区在线| 欧美 日韩 国产精品免费观看| 欧美日韩国产综合久久| 噜噜噜在线观看免费视频日韩| 欧美视频免费| 亚洲电影在线免费观看| 韩国一区二区三区美女美女秀| 99re8这里有精品热视频免费| 亚洲电影免费观看高清完整版在线观看 | 美女精品在线| 午夜伦理片一区| 欧美精品乱码久久久久久按摩| 久久精品视频一| 国产精品人人做人人爽 | 久久天天狠狠| 久久精品导航| 国产乱肥老妇国产一区二| 亚洲日韩视频| 亚洲理论在线观看| 美女日韩在线中文字幕| 久久久久亚洲综合| 国产亚洲一级| 欧美一级专区免费大片| 亚洲欧美日韩一区二区三区在线| 欧美大片在线观看一区| 欧美成人免费小视频| 欧美国产精品va在线观看| 亚洲综合视频1区| 欧美jizz19性欧美| 免费人成精品欧美精品| 国模 一区 二区 三区| 性做久久久久久久免费看| 性欧美在线看片a免费观看| 国产精品hd| 亚洲永久视频| 久久精品亚洲热| 曰韩精品一区二区| 久久日韩精品| 欧美黑人在线观看| 99re6热只有精品免费观看| 欧美福利精品| 亚洲精品视频在线播放| 一区二区三区国产精华| 国产精品va在线播放| 亚洲视频中文字幕| 欧美一区二区三区免费大片| 国产日本亚洲高清| 久久成人精品视频| 欧美激情精品久久久久久变态| 亚洲精品中文在线| 国产精品国产精品国产专区不蜜| 亚洲午夜未删减在线观看| 欧美在线观看一区| 在线观看欧美| 欧美精品亚洲一区二区在线播放| 夜夜嗨av一区二区三区中文字幕| 亚洲欧美日韩国产中文在线| 国产视频一区二区在线观看| 久久裸体艺术| 亚洲免费播放| 久久精品亚洲乱码伦伦中文 | 亚洲精品久久久蜜桃 | 亚洲激情黄色| 国产精品va在线播放| 欧美在线影院| 亚洲欧洲视频在线| 久久激情综合网| 日韩视频中文| 国产亚洲欧美日韩精品| 欧美高清成人| 午夜欧美大片免费观看| 欧美搞黄网站| 午夜欧美不卡精品aaaaa| 在线观看欧美一区| 欧美体内谢she精2性欧美| 久久九九热免费视频| 99精品视频免费全部在线| 久久久精品一区二区三区| 亚洲美女精品一区| 国内揄拍国内精品久久| 欧美日韩一区二区三区四区五区| 性欧美精品高清| 日韩午夜在线观看视频| 老牛国产精品一区的观看方式| 亚洲小视频在线观看| 亚洲电影天堂av| 国产亚洲精品美女| 国产日韩视频| 国产精品久久久亚洲一区 | 国产亚洲美州欧州综合国| 亚洲精品一区二区三区99| 国产精品青草久久久久福利99| 老司机午夜免费精品视频| 亚洲综合国产精品| 亚洲理论在线| 欧美韩国一区| 免费视频最近日韩| 久久精品在线播放| 小处雏高清一区二区三区| 亚洲精品一区二区网址| 伊人久久婷婷| 国产午夜久久| 国产九九精品| 国产精品制服诱惑| 国产精品va在线播放我和闺蜜| 欧美理论片在线观看| 欧美1级日本1级| 亚洲欧美日韩国产一区二区三区 | 欧美激情一区二区三区在线| 欧美中在线观看| 一区二区三区免费看| 亚洲国产日韩一区二区| 欧美 日韩 国产精品免费观看| 久久青草欧美一区二区三区| 性欧美1819性猛交| 欧美伊人久久久久久午夜久久久久 | 国语自产精品视频在线看8查询8| 国产精品成人在线| 欧美日韩三级电影在线| 欧美人与性禽动交情品| 欧美精品久久久久久久久老牛影院 | 久久久久免费| 性久久久久久久久| 亚洲免费影院| 亚洲综合成人在线| 亚洲欧美三级在线| 欧美一区不卡| 久久久久久久激情视频| 久久偷窥视频| 欧美刺激性大交免费视频| 欧美国产日韩亚洲一区| 亚洲国产精品成人一区二区| 亚洲人成网站777色婷婷| 亚洲精品久久久久久一区二区| 亚洲美女精品久久| 中文精品视频| 久久国产精品亚洲77777| 久久男人资源视频| 欧美黄色一区| 国产精品久久久一本精品|