Skip to content

Commit 519dede

Browse files
authored
Create 1759-count-number-of-homogenous-substrings.js
1 parent e83c9ab commit 519dede

File tree

1 file changed

+25
-0
lines changed

1 file changed

+25
-0
lines changed
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,25 @@
1+
/**
2+
* @param {string} s
3+
* @return {number}
4+
*/
5+
const countHomogenous = function(s) {
6+
const mod = 10 ** 9 + 7
7+
let pre = s[0], res = 0, curL = 1
8+
for(let i = 1, len = s.length; i < len; i++) {
9+
if(s[i] === pre) {
10+
curL++
11+
} else {
12+
res = (res + helper(curL)) % mod
13+
pre = s[i]
14+
curL = 1
15+
}
16+
}
17+
if(curL === 1) res = (res + 1) % mod
18+
else res = (res + helper(curL)) % mod
19+
return res
20+
21+
function helper(num) {
22+
return (num * (num + 1)) / 2
23+
}
24+
};
25+

0 commit comments

Comments
 (0)