1143 longest common subsequence leetcode solution July 8, 2019 16 32 64 128 Longest common prefix leetcode solution java Leetcode 14 longest common prefix