Given two strings `a`

and `b`

, find the length of the **longest uncommon subsequence** between them.

A **subsequence** of a string `s`

is a string that can be obtained after deleting any number of characters from `s`

. For example, `"abc"`

is a subsequence of `"aebdc"`

because you can delete the underlined characters in `"a`

to get __e__b__d__c"`"abc"`

. Other subsequences of `"aebdc"`

include `"aebdc"`

, `"aeb"`

, and `""`

(empty string).

An **uncommon subsequence** between two strings is a string that is a **subsequence of one but not the other**.

Return *the length of the longest uncommon subsequence between a and b*. If the longest uncommon subsequence doesn't exist, return

`-1`

.

**Example 1:**

Input:a = "aba", b = "cdc"Output:3Explanation:One longest uncommon subsequence is "aba" because "aba" is a subsequence of "aba" but not "cdc". Note that "cdc" is also a longest uncommon subsequence.

**Example 2:**

Input:a = "aaa", b = "bbb"Output:3Explanation:The longest uncommon subsequences are "aaa" and "bbb".

**Example 3:**

Input:a = "aaa", b = "aaa"Output:-1Explanation:Every subsequence of string a is also a subsequence of string b. Similarly, every subsequence of string b is also a subsequence of string a.

**Constraints:**

`1 <= a.length, b.length <= 100`

`a`

and`b`

consist of lower-case English letters.

```
struct Solution;
impl Solution {
fn find_lu_slength(a: String, b: String) -> i32 {
if a == b {
-1
} else {
a.len().max(b.len()) as i32
}
}
}
#[test]
fn test() {
let a = "aba".to_string();
let b = "cdc".to_string();
assert_eq!(Solution::find_lu_slength(a, b), 3);
}
```