mirror of
				https://gitee.com/coder-xiaomo/leetcode-problemset
				synced 2025-11-04 11:43:12 +08:00 
			
		
		
		
	
		
			
				
	
	
		
			43 lines
		
	
	
		
			1.5 KiB
		
	
	
	
		
			HTML
		
	
	
	
	
	
			
		
		
	
	
			43 lines
		
	
	
		
			1.5 KiB
		
	
	
	
		
			HTML
		
	
	
	
	
	
<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> </p>
 | 
						|
 | 
						|
<p><strong>Example 1:</strong></p>
 | 
						|
 | 
						|
 | 
						|
 | 
						|
<pre>
 | 
						|
 | 
						|
<strong>Input:</strong> s = "abbcccaa"
 | 
						|
 | 
						|
<strong>Output:</strong> 13
 | 
						|
 | 
						|
<strong>Explanation:</strong> The homogenous substrings are listed as below:
 | 
						|
 | 
						|
"a"   appears 3 times.
 | 
						|
 | 
						|
"aa"  appears 1 time.
 | 
						|
 | 
						|
"b"   appears 2 times.
 | 
						|
 | 
						|
"bb"  appears 1 time.
 | 
						|
 | 
						|
"c"   appears 3 times.
 | 
						|
 | 
						|
"cc"  appears 2 times.
 | 
						|
 | 
						|
"ccc" appears 1 time.
 | 
						|
 | 
						|
3 + 1 + 2 + 1 + 3 + 2 + 1 = 13.</pre>
 | 
						|
 | 
						|
 | 
						|
 | 
						|
<p><strong>Example 2:</strong></p>
 | 
						|
 | 
						|
 | 
						|
 | 
						|
<pre>
 | 
						|
 | 
						|
<strong>Input:</strong> s = "xy"
 | 
						|
 | 
						|
<strong>Output:</strong> 2
 | 
						|
 | 
						|
<strong>Explanation:</strong> The homogenous substrings are "x" and "y".</pre>
 | 
						|
 | 
						|
 | 
						|
 | 
						|
<p><strong>Example 3:</strong></p>
 | 
						|
 | 
						|
 | 
						|
 | 
						|
<pre>
 | 
						|
 | 
						|
<strong>Input:</strong> s = "zzzzz"
 | 
						|
 | 
						|
<strong>Output:</strong> 15
 | 
						|
 | 
						|
</pre>
 | 
						|
 | 
						|
 | 
						|
 | 
						|
<p> </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> |