題意要求尋找能拼的最大長度,並且要求每個單詞只能最多用兩次,根據輸入的首字母就可以知道第乙個單詞是啥,於是聯想到dfs(),從第一的單詞開始搜尋,每個單詞都嘗試一遍看能否拼接,最終所有單詞都看完後,累加出的單詞長度就是最後答案。
這裡要對於兩個單詞能否拼接做個預處理,換個角度想想兩個單詞能拼接在一起,就是他們各自的尾和首有重疊,string中的substr()功能可以幫助我們隨心情任意肢解字串,於是可以對於兩單詞string a,string b,寫成專門返回重疊長度的函式。
其中substr(a,length1,length2)會返回從length1開始到length2的子串
```int check(string a,string b)
return 0;
}else
return 0;
}else
int temp=check(cur,str[i]);
if(temp)}}
int main()
//傳入乙個字母str[n],長度是1
dfs(str[n],1);
cout }``` 單詞接龍是乙個與我們經常玩的成語接龍相類似的遊戲,現在我們已知一組單詞,且給定乙個開頭的字母,要求出以這個字母開頭的最長的 龍 每個單詞都最多在 龍 中出現兩次 在兩個單詞相連時,其重合部分合為一部分,例如 beast和astonish,如果接成一條龍則變為beastonish,另外相鄰的兩部分不能... 單詞接龍是乙個與我們經常玩的成語接龍相類似的遊戲,現在我們已知一組單詞,且給定乙個開頭的字母,要求出以這個字母開頭的最長的 龍 每個單詞都最多在 龍 中出現兩次 在兩個單詞相連時,其重合部分合為一部分,例如 beastbe ast 和 astonishas toni sh,如果接成一條龍則變為 be... 題目描述 單詞接龍是乙個與我們經常玩的成語接龍相類似的遊戲,現在我們已知一組單詞,且給定乙個開頭的字母,要求出以這個字母開頭的最長的 龍 每個單詞都最多在 龍 中出現兩次 在兩個單詞相連時,其重合部分合為一部分,例如be ast bea st 和astoni sha st onis h,如果接成一條...洛谷p1019 單詞接龍
洛谷p1019單詞接龍
洛谷 P1019 單詞接龍