LeetCode——551. 学生出勤记录I

通过万岁!!!

  • 题目:题目说的有背景,但是其实本质就是给你一个字符串,然后里面如果出现2个A就是false,如果出现连续的3个L也是返回false,其他的都是true。
  • 思路:遍历字符串,统计A和L的个数。L的统计比较特殊,如果出现L以后就countL就+1,但是如果不是L,则countL则设置为0,这样我们可以通过countL是否等于3即可知道是不是连续三个L。
  • 技巧:字符串遍历

java代码

java 复制代码
class Solution {
    public boolean checkRecord(String s) {
        int countA = 0;
        int countL = 0;
        for (Character c : s.toCharArray()) {
            if (c == 'A') {
                countL = 0;
                countA++;
                if (countA == 2) {
                    return false;
                }
            } else if (c == 'L') {
                countL++;
                if (countL == 3) {
                    return false;
                }
            } else {
                countL = 0;
            }
        }
        return true;

    }
}
  • 总结:题目比较简单,主要是这个L的统计方法。
相关推荐
xqqxqxxq10 小时前
Java AI智能P图工具技术笔记
java·人工智能·笔记
谷雨不太卷10 小时前
进程的状态码
java·前端·算法
顾温10 小时前
default——C#/C++
java·c++·c#
空中海10 小时前
02 ArkTS 语言与工程规范
java·前端·spring
楚国的小隐士11 小时前
在AI时代,如何从0接手一个项目?
java·ai·大模型·编程·ai编程·自闭症·自闭症谱系障碍·神经多样性
散峰而望11 小时前
【算法竞赛】C/C++ 的输入输出你真的玩会了吗?
c语言·开发语言·数据结构·c++·算法·github
躺不平的理查德11 小时前
时间复杂度与空间复杂度备忘录
数据结构·算法
yaki_ya11 小时前
yaki-C语言:从概念基础到内存解析---数组(array)完全指南
java·c语言·算法
刃神太酷啦11 小时前
扒透 STL 底层!map/set 如何封装红黑树?迭代器逻辑 + 键值限制全手撕----《Hello C++ Wrold!》(23)--(C/C++)
java·c语言·javascript·数据结构·c++·算法·leetcode
亚历克斯神11 小时前
Java 25 模式匹配增强:让代码更简洁优雅
java·spring·微服务