To construct the partial suffix array SuffixArrayk(Text), we first need to construct the full suffix array and then retain only the elements of this array that are divisible by K, along with their indices i.

Assignment

Implement the generate_partial_suffix_array method which takes a string and an integer $$K$$ which is the gap size.

The function should return the suffix array of the string, with only indices that are divisible by K.

Example

>>> generate_partial_suffix_array('data01.fna'1, 18)
((11, 0), (31, 72), (42, 180), (49, 108), (63, 90), (67, 198), (85, 18), (97, 162), (127, 36), (153, 54), (155, 126), (157, 144))

>>> generate_partial_suffix_array('data02.fna'2, 22)
((22, 198), (66, 22), (84, 110), (96, 0), (110, 374), (168, 352), (174, 308), (187, 132), (207, 176), (209, 330), (226, 154), (232, 396), (242, 220), (301, 44), (311, 88), (330, 286), (344, 66), (347, 242), (376, 264))