Skip to content

Commit 01948bd

Browse files
committed
Runtime 71 ms (Top 100.0%) | Memory 45.0 MB (Top 58.33%)
1 parent 9db57cd commit 01948bd

File tree

1 file changed

+14
-11
lines changed

1 file changed

+14
-11
lines changed
Original file line numberDiff line numberDiff line change
@@ -1,15 +1,18 @@
11
var countHomogenous = function(s) {
2-
const MOD = 1e9 + 7;
3-
let res = 1;
4-
let count = 1;
2+
let mod = 1e9 + 7
3+
let n = s.length
4+
let j=0, res = 0
55

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;
6+
for(let i=0; i<n; i++){
7+
if(i>0 && s[i-1] != s[i]){
8+
let x = i-j
9+
res += x*(x+1) / 2
10+
j = i
11+
}
1212
}
1313

14-
return res;
15-
};
14+
let x = n-j
15+
res += x*(x+1) / 2
16+
17+
return res%mod
18+
};

0 commit comments

Comments
 (0)