1. 程式人生 > >551. 學生出勤記錄 I

551. 學生出勤記錄 I

給定一個字串來代表一個學生的出勤記錄,這個記錄僅包含以下三個字元:

  1. 'A' : Absent,缺勤
  2. 'L' : Late,遲到
  3. 'P' : Present,到場

如果一個學生的出勤記錄中不超過一個'A'(缺勤)並且不超過兩個連續的'L'(遲到),那麼這個學生會被獎賞。

你需要根據這個學生的出勤記錄判斷他是否會被獎賞。

示例 1:

輸入: "PPALLP"
輸出: True

示例 2:

輸入: "PPALLL"
輸出: False

class Solution {
public:
    bool checkRecord(string s) {
        int cntA = 0, cntL = 0;
        for (char c : s) {
            if (c == 'A') {
                if (++cntA > 1) return false;
                cntL = 0;
            } else if (c == 'L') {
                if (++cntL > 2) return false;
            } else {
                cntL = 0;
            }
        }
        return true;
    }
};