Given two strings X and Y, write a program to return the length of their longest common subsequence.
- A subsequence of a string is a new string generated from the original string with some characters(can be none) deleted without changing the relative order of the remaining characters. (eg, "prt" is a subsequence of "pqrst" while "ptr" is not).
- A common subsequence of two strings is a subsequence that is common to both strings.
- If there is no common subsequence, return 0.
- The input strings consist of lowercase English characters only.
Input: X = "pqrst", Y = "prt" Output: 3 Explanation: The longest common subsequence is "prt" and its length is 3.
Input: X = "pqr", Y = "pqr" Output: 3 Explanation: The longest common subsequence is "pqr" and its length is 3.
Input: X = "pqr", Y = "stu" Output: 0 Explanation: There is no such common subsequence, so the result is 0.