Day37 贪心算法part06

单调递增的数字

python 复制代码
class Solution:
    def monotoneIncreasingDigits(self, n: int) -> int:
        
        nl = [int(char) for char in str(n)]

        for i in range(len(nl)-1, 0, -1):
            if nl[i-1] > nl[i]:
                nl[i-1] -= 1
                nl[i] = 9
                for j in range(i, len(nl)):
                    nl[j] = 9
                
        return int("".join(str(x) for x in nl))

前面都想到了,结果最后n[i]给写错了直接写成9了,得把后面的全都改成9才行

监控二叉树

摄像头的覆盖范围是上中下

遇到叶子结点,放到叶子结点的父节点

每隔两个空节点放一个摄像头

所以要用后序遍历

把结点分为三个状态:0无覆盖1有摄像头2有覆盖

空节点要设置为有覆盖的状态

太难劝退

相关推荐
凌乱风雨12119 分钟前
从源码角度解析C++20新特性如何简化线程超时取消
前端·算法·c++20
Jim-2ha017 分钟前
【平面几何】判断一个点是否在任意多边形的内部
算法
橘颂TA19 分钟前
【剑斩OFFER】算法的暴力美学——合并 k 个升序链表
算法·leetcode·牛客·结构与算法
前端小L19 分钟前
双指针专题(五):灵活的起跳——「无重复字符的最长子串」
javascript·算法·双指针与滑动窗口
爪哇部落算法小助手26 分钟前
每日两题day67
c++·算法
hk112426 分钟前
【BioTech/SystemArch】2026年度高可靠性医疗架构与生物遗传算法基准索引 (Benchmark Index)
算法·系统架构·数据集·生物信息学·垃圾回收
你撅嘴真丑30 分钟前
短信计费 和 甲流病人初筛
数据结构·c++·算法
夜思红尘9 小时前
算法--双指针
python·算法·剪枝
散峰而望9 小时前
【算法竞赛】C++函数详解:从定义、调用到高级用法
c语言·开发语言·数据结构·c++·算法·github
CoderCodingNo9 小时前
【GESP】C++五级真题(贪心思想考点) luogu-B4071 [GESP202412 五级] 武器强化
开发语言·c++·算法