문제를 이해하고 있다면 바로 풀이를 보면 됨
전체 코드로 바로 넘어가도 됨
마음대로 번역해서 오역이 있을 수 있음
학생의 출석 기록을 나타내는 문자열 s가 주어진다. 각 문자는 해당 학생이 그날 결석했는지, 지각했는지, 출석했는지를 나타낸다. 기록에는 다음 세 문자만 포함된다.
학생은 다음 두 가지 기준을 모두 충족하는 경우 출석 장려금 지급 대상이 된다.
학생이 출석 장려금 지급 대상이면 true를, 그렇지 않으면 false를 반환해라.
#1
Input: s = "PPALLP"
Output: true
Explanation: 해당 학생은 결석 횟수가 2회 미만이고, 3일 이상 연속으로 지각한 적이 없다.
#2
Input: s = "PPALLL"
Output: false
Explanation: 해당 학생은 지난 3일 동안 3일 연속 지각했으므로, 지급 대상이 아니다.
class Solution {
public boolean checkRecord(String s) {
int countA = 0;
int countL = 0;
for(char ch : s.toCharArray()){
if(ch != 'L') countL = 0;
if(ch == 'L') countL++;
if(ch == 'A') countA++;
if(countA == 2 || countL == 3) return false;
}
return true;
}
}