The set of distinct characters in a string is referred to as the generalized period of the string. As an example, the generalized period of the string “aabbabb” is {‘a’,‘b’} A proper substring is
The set of distinct characters in a string is referred to as the generalized period of the string. As an example, the generalized period of the string “aabbabb” is {‘a’,‘b’} A proper substring is a contiguous substring that is contained in a string and is not the string itself. So “aabbabb” is not a proper substring of the above example. A minimal proper substring is one that can have no character removed from either end and still have the same generalized period. “aabb” is a proper substring of the example, but it is not minimal. “ab” is minimal. Unique means that multiple occurrences of the same minimal proper substring in a string are only to be counted once. In the example, “ab” appears twice, but is counted once—hence the number of proper minimal unique substrings with the same generalized period of the entire string is two: “ab” and “ba”. Your team is to write a program to count the number of proper minimal unique substrings of a given string that have the same generalized period as the string itself.