Easy
You are given a string s and an integer k.
Determine if there exists a substring of length exactly k in s that satisfies the following conditions:
"aaa" or "bbb").Return true if such a substring exists. Otherwise, return false.
Example 1:
Input: s = “aaabaaa”, k = 3
Output: true
Explanation:
The substring s[4..6] == "aaa" satisfies the conditions.
"aaa" is 'b', which is different from 'a'."aaa".Example 2:
Input: s = “abc”, k = 2
Output: false
Explanation:
There is no substring of length 2 that consists of one distinct character and satisfies the conditions.
Constraints:
1 <= k <= s.length <= 100s consists of lowercase English letters only.class Solution {
fun hasSpecialSubstring(s: String, k: Int): Boolean {
var start = 0
var end = k
while (end <= s.length) {
var flag = false
var i = start
while (i < end - 1) {
if (s[i] != s[i + 1]) {
start++
end++
flag = true
break
}
i++
}
if (flag) {
continue
}
if (start - 1 >= 0 && s[start] == s[start - 1] ||
end < s.length && s[end] == s[end - 1]
) {
start++
end++
} else {
return true
}
}
return false
}
}