Easy
You are given a string s representing an attendance record for a student where each character signifies whether the student was absent, late, or present on that day. The record only contains the following three characters:
'A': Absent.'L': Late.'P': Present.The student is eligible for an attendance award if they meet both of the following criteria:
'A') for strictly fewer than 2 days total.'L') for 3 or more consecutive days.Return true if the student is eligible for an attendance award, or false otherwise.
Example 1:
Input: s = “PPALLP”
Output: true
Explanation: The student has fewer than 2 absences and was never late 3 or more consecutive days.
Example 2:
Input: s = “PPALLL”
Output: false
Explanation: The student was late 3 consecutive days in the last 3 days, so is not eligible for the award.
Constraints:
1 <= s.length <= 1000s[i] is either 'A', 'L', or 'P'.public class Solution {
public boolean checkRecord(String s) {
int aCount = 0;
int i = 0;
while (i < s.length()) {
if (s.charAt(i) == 'A') {
aCount++;
if (aCount > 1) {
return false;
}
} else if (s.charAt(i) == 'L') {
int continuousLCount = 0;
while (i < s.length() && s.charAt(i) == 'L') {
i++;
continuousLCount++;
if (continuousLCount > 2) {
return false;
}
}
i--;
}
i++;
}
return true;
}
}