我们正常的单词不会有连续两个以上相同的字母,如果出现连续三个或以上的字母,那么这是一个抽搐词。现在给一个单词,从左至右求出所有抽搐字母的起始点和结束点。
样例
样例1
输入: str = "whaaaaatttsup"
输出: [[2,6],[7,9]]
解释:
"aaaa"和"ttt"是抽搐字母,输出他们的起始点和结束点。
样例2
输入: str = "whooooisssbesssst"
输出: [[2,5],[7,9],[12,15]]
解释:
"ooo"和"sss"和"ssss"都是抽搐字母,输出他们的起始点和结束点。
注意事项
输入的字符串长度为n,n <= 100000。
class Solution {
public:
/**
* @param str: the origin string
* @return: the start and end of every twitch words
*/
vector<vector<int>> twitchWords(string &str) {
// Write your code here
vector<vector<int>> result;
//vector<int> temp;
for (int i = 0; i < str.size()-1; i++) {
/* code */
if(str[i]==str[i+1])
{
vector<int> temp;
temp.push_back(i);
while(str[i]==str[i+1]) i++;
temp.push_back(i);
if(temp[1]-temp[0]>=2)
result.push_back(temp);
i--;
}
}
return result;
}
};