题目来源
题目描述
题目解析
一次遍历
class Solution {
public:
bool checkRecord(string s) {
char c;
int n = s.size(), acnt = 0, lcnt = 0;
bool flag = false;
for (int i = 0; i < n; i++){
c = s[i];
if(c == 'A'){
acnt++;
if(acnt >= 2){
return false;
}
}
// --- 注意["LALL"] ----
if(c == 'L'){
lcnt++;
if(lcnt >= 3){
return false;
}
}else{
lcnt = 0;
}
}
return true;
}
};
class Solution {
public:
bool checkRecord(string s) {
int n = s.size(), i = 0, acnt = 0, lcnt = 0;
bool flag = false;
while (i < n){
if(s[i] == 'A'){
acnt++;
i++;
if(acnt >= 2){
return false;
}
continue;
}else if(s[i] == 'L'){
lcnt = 0;
while (i < n && s[i] == 'L'){
lcnt++;
i++;
}
if(lcnt >= 3){
return false;
}
}else{
i++;
}
}
return acnt < 2 && lcnt < 3;
}
};