public class LCS_Simple_Recursive implements ILCS_Simple {

	private String X;
	private String Y;

	@Override
	public int LCS_length(String x, String y) {
		X = x;
		Y = y;
		return lcs_length(X.length()-1, Y.length()-1);
	}

	private int lcs_length(int i, int j) {
		if (i == -1 || j == -1) {
			return 0;
		} else if (X.charAt(i) == Y.charAt(j)) {
			return 1 + lcs_length(i - 1, j - 1);
		} else {
			return Math.max(lcs_length(i - 1, j), lcs_length(i, j - 1));
		}
	}
}
