LeetCode每日一題: 學生出勤記錄 I(No.551)

胖宅老鼠發表於2019-04-19

題目:學生出勤記錄 I


 給定一個字串來代表一個學生的出勤記錄,這個記錄僅包含以下三個字元:
'A' : Absent,缺勤
'L' : Late,遲到
'P' : Present,到場
如果一個學生的出勤記錄中不超過一個'A'(缺勤)並且不超過兩個連續的'L'(遲到),那麼這個學生會被獎賞。
你需要根據這個學生的出勤記錄判斷他是否會被獎賞。
複製程式碼

示例:


輸入: "PPALLP"
輸出: True

輸入: "PPALLL"
輸出: False
複製程式碼

思考:


迴圈遍歷字串s,用一個aCount記錄A出現次數大於1次返回false,迴圈判斷是否又連續三個L出現,有返回false。
複製程式碼

實現:


 class Solution {
    public boolean checkRecord(String s) {
        int aCount = 0;
        for (int count = 0; count < s.length(); count++) {
            if (s.charAt(count) == 'A' && ++aCount > 1) {
                return false;
            }
            if (count < s.length() - 2 && s.charAt(count) == 'L' && s.charAt(count + 1) == 'L'&& s.charAt(count + 2) == 'L') {
                return false;
            }
        }
        return true;
    }
}複製程式碼

相關文章