Welcome to Subscribe On Youtube
551. Student Attendance Record I
Description
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:
- The student was absent (
'A') for strictly fewer than 2 days total. - The student was never late (
'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'.
Solutions
-
class Solution { public boolean checkRecord(String s) { return s.indexOf("A") == s.lastIndexOf("A") && !s.contains("LLL"); } } -
class Solution { public: bool checkRecord(string s) { return count(s.begin(), s.end(), 'A') < 2 && s.find("LLL") == string::npos; } }; -
class Solution: def checkRecord(self, s: str) -> bool: return s.count('A') < 2 and 'LLL' not in s -
func checkRecord(s string) bool { return strings.Count(s, "A") < 2 && !strings.Contains(s, "LLL") } -
function checkRecord(s: string): boolean { return s.indexOf('A') === s.lastIndexOf('A') && s.indexOf('LLL') === -1; }