LC5906-句子中的有效单词数
5906. 句子中的有效单词数
暴力
class Solution {
public:
int countValidWords(string sentence) {
int cnt = 0, n = sentence.size();
for(int i = 0; i < n; ++i){
if(sentence[i] == ' ')continue;
int j = i, cc = 0;
bool f = true;
for(;j + 1 < n && sentence[j + 1] != ' '; ++j);
for(int k = i; k <= j; ++k){
if(sentence[k] == '-' && cc == 0){
cc ++;
if(k > i && k <= j - 1 &&sentence[k - 1] >= 'a' && sentence[k - 1] <= 'z'
&&sentence[k + 1] >= 'a' && sentence[k + 1] <= 'z' );
else f = false;
}
else if(sentence[k] == '-' && cc == 1) f= false;
if(sentence[k] == '!' || sentence[k] == '.' || sentence[k] == ','){
if(k == j);else f = false;
}
if(sentence[k] >= '0' && sentence[k] <= '9') f = false;
}
if(f)cnt++;
for(; sentence[j + 1] == ' '; ++j);
i = j;
}
return cnt;
}
};
浙公网安备 33010602011771号