單詞接龍是乙個與我們經常玩的成語接龍相類似的遊戲,現在我們已知一組單詞,且給定乙個開頭的字母,要求出以這個字母開頭的最長的「龍」(每個單詞都最多在「龍」中出現兩次),在兩個單詞相連時,其重合部分合為一部分,例如beast和astonish,如果接成一條龍則變為beastonish,另外相鄰的兩部分不能存在包含關係,例如at和atide間不能相連。
每個測試檔案只包含一組測試資料,每組輸入的第一行為乙個單獨的整數n(n<=20)表示單詞數,以下n行每行有乙個單詞,輸入的最後一行為乙個單個字元,表示「龍」開頭的字母。你可以假定以此字母開頭的「龍」一定存在。
對於每組輸入資料,輸出以此字母開頭的最長的「龍」的長度。
下面的測試樣例最後連成的「龍」為atoucheatactactouchoose。
5attouch
cheat
choose
tact
a
23
#include#include#includeusing namespace std;
int mp[111][111];
int vis[111];
int n;
string a[111];
int len=0;
int ans=0;
int check(int x,int y)
cin>>a[0];
for(i=0;i<=n;i++)
}len=0;
ans=0;
for(i=1;i<=n;i++)
}cout<}
return 0;
}
1018 單詞接龍
題目描述 description 單詞接龍是乙個與我們經常玩的成語接龍相類似的遊戲,現在我們已知一組單詞,且給定乙個開頭的字母,要求出以這個字母開頭的最長的 龍 每個單詞都最多在 龍 中出現兩次 在兩個單詞相連時,其重合部分合為一部分,例如beast和astonish,如果接成一條龍則變為beast...
1220 單詞接龍
題目 單詞接龍是乙個與我們經常玩的成語接龍相類似的遊戲,現在我們已知一組單詞,且給定乙個開頭的字母,要求出以這個字母開頭的最長的 龍 每個單詞都最多在 龍 中出現兩次 在兩個單詞相連時,其重合部分合為一部分,例如beast和astonish,如果接成一條龍則變為beastonish,另外相鄰的兩部分...
127 單詞接龍
思路和126差不多,區別在於只用bfs,每次訪問一層,用乙個map來儲存訪問過的結點以及與起點的距離,避免重複訪問。最後輸出map中的終點項即可 import queue class solution def ladderlength self,beginword,endword,wordlist ...