Leetcode刷题100天—551.学生出勤记录I(字符串)—day12

Posted 神的孩子都在歌唱

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Leetcode刷题100天—551.学生出勤记录I(字符串)—day12相关的知识,希望对你有一定的参考价值。

A前言:

作者:神的孩子在歌唱

大家好,我叫运智

给你一个字符串 s 表示一个学生的出勤记录,其中的每个字符用来标记当天的出勤情况(缺勤、迟到、到场)。记录中只含下面三种字符:

  • 'A':Absent,缺勤
  • 'L':Late,迟到
  • 'P':Present,到场

如果学生能够 同时 满足下面两个条件,则可以获得出勤奖励:

  • 总出勤 计,学生缺勤(‘A’)严格 少于两天。
  • 学生 不会 存在 连续 3 天或 3 天以上的迟到(‘L’)记录。

如果学生可以获得出勤奖励,返回 true ;否则,返回 false 。

示例 1:

输入:s = "PPALLP"
输出:true
解释:学生缺勤次数少于 2 次,且不存在 3 天或以上的连续迟到记

录。
示例 2:

输入:s = “PPALLL”

输出:false
解释:学生最后三天连续迟到,所以不满足出勤奖励的条件。

提示:

1 <= s.length <= 1000
s[i]'A''L''P'

来源:力扣(LeetCode)

链接:https://leetcode-cn.com/problems/student-attendance-record-i

著作权归领扣网络所有。商业转载请联系官方授权,非商业转载请注明出处。

package 水题;

public class _551_学生出勤记录I {
	public  static boolean checkRecord(String s) {
		int h=0,j=0;
		for (int i=0;i<s.length();i++) {
			
			if (s.charAt(i)=='A') {
				h++;
				if (j<3) {
					j=0;
				}
			}
			else if (s.charAt(i)=='L') {
				j++;
			}else {
				j=0;
			}
			if (h>=2 || j>=3) {
				return false;
			}
			System.out.print(h);
			System.out.print(j);			
		}
		return true;
    }
	public static void main(String args[]) {
		String s="PPALLL";
		boolean c=checkRecord(s);
		System.out.print(c);
	}
}

本人csdn博客:https://blog.csdn.net/weixin_46654114

转载说明:跟我说明,务必注明来源,附带本人博客连接。

以上是关于Leetcode刷题100天—551.学生出勤记录I(字符串)—day12的主要内容,如果未能解决你的问题,请参考以下文章

leetcode刷题总结551-600

LeetCode 551 学生出勤记录I[选择 字符串] HERODING的LeetCode之路

LeetCode:学生的出勤记录|551

LeetCode 551. 学生出勤记录 I /552. 学生出勤记录 II(动态规划)/345. 反转字符串中的元音字母(set加入元素的方法)

C++&Python描述 LeetCode 551. 学生出勤记录 I

LeetCode 551. Student Attendance Record I (学生出勤纪录 I)