Java Longest Common Subsequence Leetcode Solution 30