# Python, Simple Explanation

• For strings A, B, when len(A) > len(B), the longest possible subsequence of either A or B is A, and no subsequence of B can be equal to A. Answer: len(A).

When len(A) == len(B), the only subsequence of B equal to A is B; so as long as A != B, the answer remains len(A).

When A == B, any subsequence of A can be found in B and vice versa, so the answer is -1.

``````def findLUSlength(self, A, B):
if A == B:
return -1
return max(len(A), len(B))
``````

• (Edited) Make it 1 line.

``````def findLUSlength(self, a, b):
return -1 if a==b else max(len(a), len(b))``````

• @lee215 Little bug, gets `Line 3: NameError: global name 'A' is not defined`. (fixed now)

And just some silly golfing:

``````    return-1if a==b else max(len(a),len(b))
return a!=b and max(len(a),len(b))or-1
return(a!=b)*max(len(a),len(b))or-1``````

• @StefanPochmann Thx, I make the same little bug everytime.

Looks like your connection to LeetCode Discuss was lost, please wait while we try to reconnect.