public void LowerBound2()
        {
            // Arrange
            var sa = new SuffixArray("ABABBAB");

            // Act
            var resultIdx = sa.LowerBound("B");

            // Assert
            Assert.AreEqual(3, resultIdx);
        }
        public void LowerBound(int idx, int expectedIdx)
        {
            // Arrange
            var sa = new SuffixArray("camel");
            var text = "camel".Substring(idx);

            // Act
            var resultIdx = sa.LowerBound(text);

            // Assert
            Assert.AreEqual(expectedIdx, resultIdx);
        }