首页 > 其他分享 >#每日一练

#每日一练

时间:2024-08-20 12:25:40浏览次数:7  
标签:return 出勤 每日 个数 缺勤 false sum

题目:

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

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

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

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

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

思路:

用一次遍历,计算 s 中 'A' 和 'L' 的个数,当 'A' 的个数大于等于 2 时,返回 false,当 'L'的个数大于 3 时(题目要求 'L'是连续三天或连续三天及以上,需要当 i 指向非 'L'元素时,将sum_L 置零,这样可以保证sum_L的数值为连续 'L'的个数),返回 false。

代码:

class Solution:
    def checkRecord(self, s: str) -> bool:
        sum_A = sum_L = 0
        for i in s:
            if i == 'A':
                sum_A += 1
                sum_L = 0
                if sum_A >= 2:
                    return False
            elif i == 'L':
                sum_L += 1
                if sum_L >= 3:
                    return False
            else:
                sum_L = 0
        return True

心得:一行代码解决

 return s.count('A') < 2 and 'LLL' not in s

原题链接:https://leetcode.cn/problems/student-attendance-record-i/solutions/939224/xue-sheng-chu-qin-ji-lu-i-by-leetcode-so-fcol/

标签:return,出勤,每日,个数,缺勤,false,sum
From: https://blog.csdn.net/m0_47135524/article/details/141300104

相关文章

  • #每日一练
    题目:给你两个正 整数 x 和 y ,分别表示价值为75和10的硬币的数目。Alice和Bob正在玩一个游戏。每一轮中,Alice 先进行操作,Bob后操作。每次操作中,玩家需要拿出价值总和 为115的硬币。如果一名玩家无法执行此操作,那么这名玩家输掉 游戏。两名玩家都采取最......
  • Leetcode每日刷题之18.四数之和
    1.题目解析这里的18.四数之和与之前的三数之和有着异曲同工之妙,所以建议看完三数之和再来看本题,详细题目见Leetcode每日刷题之15.三数之和 ,只不过这里需要寻找的是四元组,也是不能寻找重复的四元组并且四元组内的数字可以按照任意顺序返回2.算法原理关于四数之和的思路......
  • Leetcode每日一题 20240817 3137.K周期字符串需要的最少操作次数
    题目描述给你一个长度为n的字符串word和一个整数k,其中k是n的因数。在一次操作中,你可以选择任意两个下标i和j,其中0<=i,j<n,且这两个下标都可以被k整除,然后用从j开始的长度为k的子串替换从i开始的长度为k的子串。也就是说,将子串word[i…i+k......
  • Leetcode每日一题 20240818 551.学生出勤记录Ⅰ
    题目描述给你一个字符串s表示一个学生的出勤记录,其中的每个字符用来标记当天的出勤情况(缺勤、迟到、到场)。记录中只含下面三种字符:‘A’:Absent,缺勤‘L’:Late,迟到‘P’:Present,到场如果学生能够同时满足下面两个条件,则可以获得出勤奖励:按总出勤计,学生缺勤(‘A’)严......
  • 每日掌握一个论文插图·小提琴图|24-08-18
    一、小提琴图的定义小提琴图是一种数据可视化工具,它结合了箱型图和核密度估计图的特点,使得我们能够更全面地了解数据的分布特征。小提琴图是一种统计图表,它通过图形化的方式展示了数据的分布密度。与传统的箱型图相比,小提琴图提供了更多的信息,因为它不仅显示了数据的中......
  • 高级java每日一道面试题-2024年8月16日-设计模式篇-解释装饰者模式和代理模式的区别?
    如果有遗漏,评论区告诉我进行补充面试官:解释装饰者模式和代理模式的区别?我回答:在Java中,装饰者模式(DecoratorPattern)和代理模式(ProxyPattern)都是常用的设计模式,它们在结构上看起来有些相似,但实际上它们的目的、应用场景和实现方式存在明显的区别。下面详细解释这两种......
  • 基于nodejs+vue每日一课微党课学习管理平台[程序+论文+开题]-计算机毕业设计
    本系统(程序+源码+数据库+调试部署+开发环境)带文档lw万字以上,文末可获取源码系统程序文件列表开题报告内容研究背景在信息化高速发展的今天,党员教育作为党的建设的重要组成部分,面临着如何高效、便捷、创新地传播党的理论知识与实践经验的挑战。传统的党员学习方式受限于时......
  • C:每日一题:单身狗
    ​​​​一、题目:在一个整型数组中,只有一个数字出现一次,其他数组都是成对出现的,请找出那个只出现一次的数字。整型数组intarr[]={1,1,2,2,3,4,4}二、思路分析:1.,明确目标,选择合适的算法我们需要在数组中找出单个出现的数字;由于相同数字异或的结果为 0 ,而任何数字......
  • 高级java每日一道面试题-2024年8月15日-设计模式篇-设计模式与面向对象原则的关系是什
    如果有遗漏,评论区告诉我进行补充面试官:设计模式与面向对象原则的关系是什么?我回答:在设计模式与面向对象原则的关系中,两者紧密相连且相互促进。面向对象的原则为设计模式的形成提供了理论基础和指导思想,而设计模式则是这些原则在特定问题域中的具体实践和实现方式。下......
  • LeetCode每日一题----特殊数组二
    解析:1.int[]nums:一个整数数组。2.int[][]queries:一个二维整数数组,每个一维数组包含两个整数,表示查询的范围。该方法的主要功能是根据给定的nums数组和一系列查询queries,判断每个查询区间[queries[i][0],queries[i][1]]内的元素是否都具有相同的奇偶性。返回一个布......