public BULCS(String X, String Y)
	{
		this.X = X;
		this.Y = Y;

		len = new int[X.length()][Y.length()];

		// base case
		len[0][0] = 0;
		if (X.charAt(0) == Y.charAt(0))
			len[0][0] = 1;

		for (int i = 1; i < X.length(); i++)
		{
			len[i][0] = len[i - 1][0];
			if (X.charAt(i) == Y.charAt(0))
				len[i][0] = 1;
		}

		for (int j = 1; j < Y.length(); j++)
		{
			len[0][j] = len[0][j - 1];
			if (Y.charAt(j) == X.charAt(0))
				len[0][j] = 1;
		}

		lengthLCS();
	}