java.lang.Object
g1701_1800.s1759_count_number_of_homogenous_substrings.Solution

public class Solution extends Object
1759 - Count Number of Homogenous Substrings.<p>Medium</p> <p>Given a string <code>s</code>, return <em>the number of <strong>homogenous</strong> substrings of</em> <code>s</code><em>.</em> Since the answer may be too large, return it <strong>modulo</strong> <code>10<sup>9</sup> + 7</code>.</p> <p>A string is <strong>homogenous</strong> if all the characters of the string are the same.</p> <p>A <strong>substring</strong> is a contiguous sequence of characters within a string.</p> <p><strong>Example 1:</strong></p> <p><strong>Input:</strong> s = &ldquo;abbcccaa&rdquo;</p> <p><strong>Output:</strong> 13</p> <p><strong>Explanation:</strong> The homogenous substrings are listed as below:</p> <p>&ldquo;a&rdquo; appears 3 times.</p> <p>&ldquo;aa&rdquo; appears 1 time.</p> <p>&ldquo;b&rdquo; appears 2 times.</p> <p>&ldquo;bb&rdquo; appears 1 time.</p> <p>&ldquo;c&rdquo; appears 3 times.</p> <p>&ldquo;cc&rdquo; appears 2 times.</p> <p>&ldquo;ccc&rdquo; appears 1 time.</p> <p>3 + 1 + 2 + 1 + 3 + 2 + 1 = 13.</p> <p><strong>Example 2:</strong></p> <p><strong>Input:</strong> s = &ldquo;xy&rdquo;</p> <p><strong>Output:</strong> 2</p> <p><strong>Explanation:</strong> The homogenous substrings are &ldquo;x&rdquo; and &ldquo;y&rdquo;.</p> <p><strong>Example 3:</strong></p> <p><strong>Input:</strong> s = &ldquo;zzzzz&rdquo;</p> <p><strong>Output:</strong> 15</p> <p><strong>Constraints:</strong></p> <ul> <li><code>1 <= s.length <= 10<sup>5</sup></code></li> <li><code>s</code> consists of lowercase letters.</li> </ul>
  • Constructor Details

    • Solution

      public Solution()
  • Method Details

    • countHomogenous

      public int countHomogenous(String s)