Problem
最长 不公共 子串
Example
输入:“aba”, “cdc”
输出:3
解释:左子串的最长子串为自己,右边也是,他们不相等,所以为3
输入:“asdf”,“asd”
输出:3
解释:左边最长字串为自己长度为4,右边最长为自己,长度为3,最长的不公共字串就为左边的,结果为4
Solution
这题有点脑筋急转弯的感觉…
如果两个字符串相等,那就是没有不同的,返回-1
如果两字符串不相等,那每个字符串本身就是自己的最长子串,所以答案就为他们中,长度较长的那个
class Solution {
public int findLUSlength(String a, String b) {
return a.equals(b) ? -1 : Math.max(a.length(), b.length());
}
}