diff --git a/java/minimum-length-of-string-after-deleting-similar-ends.java b/java/minimum-length-of-string-after-deleting-similar-ends.java new file mode 100644 index 0000000..7b9e1b7 --- /dev/null +++ b/java/minimum-length-of-string-after-deleting-similar-ends.java @@ -0,0 +1,20 @@ +class Solution { + public int minimumLength(String s) { + int i = 0; + int j = s.length() - 1; + + while (i < j && s.charAt(i) == s.charAt(j)) { + var c = s.charAt(i); + + while (i <= j && s.charAt(i) == c) { + ++i; + } + + while (j > i && s.charAt(j) == c) { + --j; + } + } + + return j - i + 1; + } +}