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

USACO 2.3 Longest Prefix


Trie樹+簡單DP

對(duì)所有的primitives建一個(gè)Trie樹。用于查找某字符串是否為primitive。一開始的時(shí)候,我圖方便用set來存儲(chǔ),結(jié)果超時(shí)。后改成trie。
用dp[i]來保存從i開始的子串的最大prefix數(shù)。
這樣如果字符串buf[i..j]是primitive,且dp[i+j]+j>dp[i],那更新。由于primitive最長為10。只需看前十個(gè)字符即可。
時(shí)間復(fù)雜度為O(10*10*n)。
ps.這題的輸入有點(diǎn)麻煩

#include?<iostream>
#include?
<fstream>
#include?
<sstream>
#include?
<set>

using?namespace?std;

struct?trie_node{
????trie_node
*?next[26];
????
bool?is_terminal;
????trie_node(){
????????memset(next,
0,sizeof(next));
????????is_terminal?
=?false;
????}
};

void?insert_str(trie_node*root,const?char*str,int?len)
{
????trie_node?
*?cur=root;

????
for(int?i=0;i<len;++i){
????????
if(?cur->next[str[i]-'A']==NULL){
????????????cur
->next[str[i]-'A']?=?new?trie_node;
????????}
????????cur?
=?cur->next[str[i]-'A'];?
????}

????cur
->is_terminal?=?true;
}

bool?find_str(trie_node*root,const?char?*str,int?len)
{
????trie_node?
*?cur?=?root;

????
for(int?i=0;i<len;++i){
????????
if(?cur->next[str[i]-'A']?==?NULL?)
????????????
return?false;
????????
else?
????????????cur?
=?cur->next[str[i]-'A'];
????}

????
if(cur->is_terminal)?
????????
return?true;
????
else
????????
return?false;
}

char?buf[200000];
int?dp[2000001];
int?buf_len;
trie_node?root;

void?input()
{
????freopen(
"prefix.in","r",stdin);
????freopen(
"prefix.out","w",stdout);

????
while(scanf("%s",buf)&&strcmp(buf,".")!=0){
//????????printf("%s?",buf);
??????????insert_str(&root,buf,strlen(buf));
????}

//????printf("\n");

????
int?c;
????buf_len
=0;
????
while(?(c=getchar())!=EOF){
????????
if(!isspace(c)){
????????????buf[buf_len
++]?=?(char)c;
//????????????printf("%c",c);
????????}
????}
//????printf("%d\n",buf_len);
}

void?solve()
{
????input();

????dp[buf_len]
=0;
????
for(int?i=buf_len-1;i>=0;--i){
???????
for(int?j=1;j<=10&&i+j-1<buf_len;++j){
???????????
if(?find_str(&root,&buf[i],j)?)
???????????????
if(dp[i+j]+j>dp[i])
???????????????????dp[i]?
=?dp[i+j]+j;
???????}?
????}

????printf(
"%d\n",dp[0]);
}

int?main(int?argc,char?*argv[])
{
????solve();?
????
return?0;
}

posted on 2009-06-23 21:13 YZY 閱讀(1466) 評(píng)論(1)  編輯 收藏 引用 所屬分類: AlgorithmUSACO動(dòng)態(tài)規(guī)劃

評(píng)論

# re: USACO 2.3 Longest Prefix[未登錄] 2013-05-02 22:57 John

其實(shí)你這樣寫的話用沒用trie樹都沒什么區(qū)別。。。  回復(fù)  更多評(píng)論   

導(dǎo)航

<2009年6月>
31123456
78910111213
14151617181920
21222324252627
2829301234
567891011

統(tǒng)計(jì)

常用鏈接

留言簿(2)

隨筆分類

隨筆檔案

搜索

積分與排名

最新評(píng)論

閱讀排行榜

青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <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一区二区| 欧美人与禽猛交乱配| 亚洲影院色无极综合| 久久亚洲精品一区二区| 狠狠网亚洲精品| 久久精品亚洲| 久久精品国产99精品国产亚洲性色| 欧美午夜免费| 亚洲综合色激情五月| 亚洲美女尤物影院| 亚洲一区亚洲| 亚洲国产影院| 一区二区三区免费网站| 国产亚洲一本大道中文在线| 久久久伊人欧美| 欧美成人精品在线观看| 亚洲女优在线| 欧美电影免费观看| 欧美一区91| 欧美日韩亚洲系列| 欧美第十八页| 久久免费视频在线观看| 亚洲欧美一区二区三区在线| 毛片基地黄久久久久久天堂| 亚洲视频你懂的| 久久久夜精品| 亚洲欧洲日韩综合二区| 国产精品电影在线观看| 亚洲大片免费看| 亚洲国产成人精品视频| 亚洲视频高清| 日韩午夜在线视频| 麻豆成人在线| 美女脱光内衣内裤视频久久网站| 国产精品福利网| 91久久精品国产91久久| 99亚洲一区二区| 免费成人高清在线视频| 免费永久网站黄欧美| 樱花yy私人影院亚洲| 久久精品国产77777蜜臀| 国产精品久久久久久久久久久久久| 欧美成年人网| 99国产精品一区| 国产精品试看| 美女日韩欧美| 一本色道**综合亚洲精品蜜桃冫| 亚洲一区在线看| 国产一区二区黄| 久久在线精品| 一本色道久久综合亚洲精品不| 欧美日本国产精品| 亚洲综合欧美日韩| 久久躁日日躁aaaaxxxx| 亚洲国产欧美不卡在线观看| 欧美肥婆在线| 一区二区三区精品视频| 欧美在线影院在线视频| 国产一区二区三区av电影| 欧美成人乱码一区二区三区| 亚洲精品影院| 欧美专区在线观看一区| 亚洲黄色av一区| 香蕉久久国产| 亚洲福利视频专区| 亚洲欧美另类在线观看| 一区在线观看视频| 欧美精品1区| 亚洲免费一级电影| 美女精品在线| 六月婷婷一区| 夜夜嗨av一区二区三区四季av | 亚洲一区二区日本| 国产情人节一区| 久久偷看各类wc女厕嘘嘘偷窃| 欧美一区二区三区免费观看视频| 国产伦精品一区二区三区照片91 | 国产欧美午夜| 欧美h视频在线| 欧美在线视频网站| 亚洲一区国产视频| 国产精品综合av一区二区国产馆| 久久在线免费视频| 欧美一级片久久久久久久| 日韩一区二区精品葵司在线| 最近中文字幕日韩精品| 久久精品论坛| 欧美激情亚洲一区| 欧美国产成人在线| 欧美成人免费网站| 亚洲欧洲日本国产| 99视频一区二区| 在线综合视频| 午夜在线电影亚洲一区| 欧美一区深夜视频| 亚洲国产精品第一区二区| 亚洲国产美女精品久久久久∴| 怡红院av一区二区三区| 亚洲国产精品99久久久久久久久| 亚洲黄一区二区三区| 亚洲国产岛国毛片在线| 亚洲黄色天堂| 亚洲性感激情| 玖玖精品视频| 亚洲精品美女久久7777777| 亚洲天堂男人| 美女在线一区二区| 欧美护士18xxxxhd| 国产欧美日韩精品a在线观看| 亚洲第一综合天堂另类专| 亚洲一区在线观看视频| 欧美成人免费网站| 久久久国产一区二区| 亚洲免费一区二区| 欧美精品一区二区三区很污很色的 | 牛牛影视久久网| 久久精品二区| 国产精品你懂的| 极品尤物av久久免费看| 亚洲欧美精品一区| 欧美专区中文字幕| 亚洲欧美视频在线观看| 欧美精品在线观看91| 韩国一区电影| 小黄鸭视频精品导航| 亚洲精品一区二区在线| 欧美视频在线观看免费| 亚洲精品久久| 蜜臀久久99精品久久久久久9| 亚洲一级电影| 欧美激情精品久久久久久久变态| 欧美中在线观看| 国产欧美日韩91| 日韩视频免费在线| 欧美日韩在线看| 欧美一区二区精品| 久久精品综合一区| 亚洲色图自拍| 另类成人小视频在线| 欧美—级a级欧美特级ar全黄| 中日韩午夜理伦电影免费| 欧美在线日韩| 永久域名在线精品| 亚洲国产精品成人综合色在线婷婷| 久久久夜精品| 亚洲三级观看| 欧美sm视频| 久久精品欧洲| 欧美精品国产一区| 亚洲精品久久视频| 蜜臀av在线播放一区二区三区| 一区二区三区视频免费在线观看 | 亚洲综合精品一区二区| 性欧美暴力猛交69hd| 欧美精品二区| 欧美一区二区三区在线免费观看| 另类亚洲自拍| 久久综合久久久| 国产一区激情| 久久蜜桃精品| 国产午夜精品美女视频明星a级 | 在线视频亚洲一区| 欧美一级一区| 亚洲国产精品福利| 一区二区三区高清视频在线观看| 伊人成年综合电影网| 亚洲欧美日韩电影| 亚洲视频一起| 欧美成人在线免费视频| 欧美国产在线观看| 夜夜嗨av一区二区三区免费区| 国产精品亚洲一区| 亚洲影视在线| 欧美色道久久88综合亚洲精品| 欧美风情在线观看| 99re6这里只有精品视频在线观看| 久久露脸国产精品| 国语自产精品视频在线看一大j8 | 一区二区在线视频| 欧美在线精品免播放器视频| 免费一区视频| 日韩午夜视频在线观看| 欧美欧美天天天天操| 一本色道久久综合亚洲精品不卡 | 亚洲欧美一区在线| 国产精品视频九色porn| 性xx色xx综合久久久xx| 免费观看成人网| 久久九九全国免费精品观看| 亚洲高清二区| 国产精品久久久久av| 久久精品一区二区三区不卡牛牛| 一区二区三区国产| 国产一区白浆| 欧美美女视频| 久久精品91久久久久久再现| 欧美中文在线免费| 亚洲视频在线一区| 国产精品久久久久久久浪潮网站 | 国产精品vip|