LeetCode简单题之学生出勤记录 I
题目
给你一个字符串 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)
解题思路
遍历整个字符串,如果是A的话统计一下缺席数并将迟到数置为0,如果是L的话统计一下迟到数,并及时判断迟到数是否已经超过两天,如果是P的话只需要将迟到数置为0即可。当然在这个题目中也可以及时判断缺席数是否小于2如果小于2的话返回结果就可以了,但是考虑到一般情况中缺席的情况应该是少数的,如果是及时判断缺席数的话会增加系统判断次数。
class Solution:def checkRecord(self, s: str) -> bool:A=0L=0for i in s:if i=='A':A+=1L=0elif i=='L':L+=1if L>2:return Falseelse:L=0return True if A<2 else False
LeetCode简单题之学生出勤记录 I相关推荐
- 算法第四题:学生出勤记录情况统计 2021-08-19
一.问题描述 可以用字符串表示一个学生的出勤记录,其中的每个字符用来标记当天的出勤情况(缺勤.迟到.到场).记录中只含下面三种字符: 'A':Absent,缺勤 'L':Late,迟到 'P':Pre ...
- 【算法千题案例】每日LeetCode打卡——83.学生出勤记录 I
- LeetCode简单题之学生分数的最小差值
题目 给你一个 下标从 0 开始 的整数数组 nums ,其中 nums[i] 表示第 i 名学生的分数.另给你一个整数 k . 从数组中选出任意 k 名学生的分数,使这 k 个分数间 最高分 和 最 ...
- LeetCode 552. 学生出勤记录 II(动态规划)
文章目录 1. 题目 2. 解题 1. 题目 给定一个正整数 n,返回长度为 n 的所有可被视为可奖励的出勤记录的数量. 答案可能非常大,你只需返回结果mod 10^9 + 7的值. 学生出勤记录是只 ...
- C++Python描述 LeetCode 551. 学生出勤记录 I
C++&Python描述 LeetCode 551. 学生出勤记录 I 大家好,我是亓官劼(qí guān jié ),在公众号.CSDN.GitHub.B站.华为开发者论坛等平台分享一些 ...
- LeetCode——552. 学生出勤记录 II(Student Attendance Record II)[困难]——分析及代码(Java)
LeetCode--552. 学生出勤记录 II[Student Attendance Record II][困难]--分析及代码[Java] 一.题目 二.分析及代码 1. 动态规划 (1)思路 ( ...
- leetcode: 552. 学生出勤记录 II
552. 学生出勤记录 II 来源:力扣(LeetCode) 链接: https://leetcode.cn/problems/student-attendance-record-ii/ 可以用字符串 ...
- 【Leetcode】552. 学生出勤记录 II
552. 学生出勤记录 II 题目描述 解题思路 题目描述 可以用字符串表示一个学生的出勤记录,其中的每个字符用来标记当天的出勤情况(缺勤.迟到.到场).记录中只含下面三种字符: 'A':Absent ...
- Java实现 LeetCode 551 学生出勤记录 I(暴力大法好)
551. 学生出勤记录 I 给定一个字符串来代表一个学生的出勤记录,这个记录仅包含以下三个字符: 'A' : Absent,缺勤 'L' : Late,迟到 'P' : Present,到场 如果一个 ...
最新文章
- java的默认_java默认包的使用
- C/C++网络编程中的TCP保活
- 每天一道LeetCode-----复制无向图
- 单点登陆的三种实现方式
- WebApi权限验证流程的设计和实现
- 文本字符分析python_Python实现字符串匹配算法代码示例
- chrome html 读写文件路径,Chrome浏览器支持直接读写本地文件了
- csv导入mysql_mysql导入超大csv指南
- 如何右键文件夹以Sublime 打开
- mysql中修改表的还原命令_MySQL的增、删、改、查和备份、恢复的命令
- 贪心 FZU 2013 A short problem
- 分布式系统原理_分布式系统架构设计 第19式 分布式系统八卦思维模型
- ajaxForm和ajaxSubmit实现form的ajax提交的方法
- 如何在SVN创建分支版本
- 数据库防火墙闪亮登场(好文共赏)
- switch()函数 ----by xhxh
- win7 修复计算机步骤,解答win7系统桌面上的计算机不见了的修复步骤
- android分享图片到qq,Android实现截图分享qq,微信
- 在excel中等间距抽取数据
- 安装kubectl失败:error: unpacking of archive failed on file /usr/bin/kubectl: cpio: rename