Student Attendance Record I
给一个string, 问有没有连续三个L或者超过一个A. 超过一个A用boolean判断, 连续三个L用一个counter和prev, prev记录前一个字符, counter记录几次重复.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 |
class Solution { public boolean checkRecord(String s) { boolean absent = false; int countOfL = 0; char prev = 'C'; for(char c : s.toCharArray()) { if(c == 'A') { if(!absent) absent = true; else return false; } else if(c == 'L' && prev == 'L'){ countOfL++; if(countOfL == 2) return false; }else{ countOfL = 0; } prev = c; } return true; } } |