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的统计方法。
相关推荐
天“码”行空6 分钟前
java面向对象的三大特性之一多态
java·开发语言·jvm
毕设源码-郭学长9 分钟前
【开题答辩全过程】以 基于SpringBoot框架的民俗文化交流与交易平台的设计与实现为例,包含答辩的问题和答案
java·spring boot·后端
Qhumaing30 分钟前
C++学习:【PTA】数据结构 7-1 实验7-1(最小生成树-Prim算法)
c++·学习·算法
好大哥呀1 小时前
Java Web的学习路径
java·前端·学习
f***14771 小时前
SpringBoot实战:高效实现API限流策略
java·spring boot·后端
on the way 1231 小时前
day06-SpringDI 依赖注入
java·spring
C***11501 小时前
Spring aop 五种通知类型
java·前端·spring
BD_Marathon2 小时前
SpringBoot——多环境开发配置
java·spring boot·后端
代码N年归来仍是新手村成员2 小时前
【Java转Go】即时通信系统代码分析(一)基础Server 构建
java·开发语言·golang