We read every piece of feedback, and take your input very seriously.
To see all available qualifiers, see our documentation.
1 parent 9db57cd commit 01948bdCopy full SHA for 01948bd
scripts/algorithms/C/Count Number of Homogenous Substrings/Count Number of Homogenous Substrings.js
@@ -1,15 +1,18 @@
1
var countHomogenous = function(s) {
2
- const MOD = 1e9 + 7;
3
- let res = 1;
4
- let count = 1;
+ let mod = 1e9 + 7
+ let n = s.length
+ let j=0, res = 0
5
6
- for (let i = 1; i < s.length; i++) {
7
- const curr = s.charAt(i);
8
- const prev = s.charAt(i - 1);
9
-
10
- count = curr == prev ? count + 1 : 1;
11
- res = (res + count) % MOD;
+ for(let i=0; i<n; i++){
+ if(i>0 && s[i-1] != s[i]){
+ let x = i-j
+ res += x*(x+1) / 2
+ j = i
+ }
12
}
13
14
- return res;
15
-};
+ let x = n-j
16
+
17
+ return res%mod
18
+};
0 commit comments