題目
難度:★★☆☆☆
類型:字符串
給定兩個(gè)字符串,你需要從這兩個(gè)字符串中找出最長(zhǎng)的特殊序列。最長(zhǎng)特殊序列定義如下:該序列為某字符串獨(dú)有的最長(zhǎng)子序列(即不能是其他字符串的子序列)。
子序列可以通過(guò)刪去字符串中的某些字符實(shí)現(xiàn),但不能改變剩余字符的相對(duì)順序??招蛄袨樗凶址淖有蛄?,任何字符串為其自身的子序列。
輸入為兩個(gè)字符串,輸出最長(zhǎng)特殊序列的長(zhǎng)度。如果不存在,則返回 -1。
說(shuō)明
兩個(gè)字符串長(zhǎng)度均小于100。
字符串中的字符僅含有 'a'~'z'。
示例
輸入: "aba", "cdc"
輸出: 3
解析: 最長(zhǎng)特殊序列可為 "aba" (或 "cdc")
解答
這道題是個(gè)腦筋急轉(zhuǎn)彎,實(shí)際上就是對(duì)于輸入的兩個(gè)字符串,相等時(shí)返回-1,否則返回兩者中更長(zhǎng)的字符串的長(zhǎng)度。
class Solution:
def findLUSlength(self, a: str, b: str) -> int:
return -1 if a == b else max(len(a), len(b))
如有疑問(wèn)或建議,歡迎評(píng)論區(qū)留言~