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有覆盖

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

太难劝退

相关推荐
两袖清风99821 分钟前
【Java】—— 常见的排序算法
java·数据结构·算法·排序算法
2401_881244401 小时前
ST表——算法的优化
算法
freyazzr2 小时前
Leetcode刷题 | Day67_图论12_Floyd算法 / A*算法
数据结构·c++·算法·leetcode·图论
fouen2 小时前
贪心算法实战1
数据结构·算法·贪心算法
楼田莉子2 小时前
C++学习之STL学习:string类常用接口的模拟实现
开发语言·数据结构·c++·学习·算法·stl
勇闯逆流河2 小时前
【数据结构】链式二叉树
数据结构·算法
记得早睡~3 小时前
leetcode3-无重复字符的最长子串
javascript·数据结构·算法·leetcode
鲨鱼吃橘子3 小时前
HTTPS协议原理
网络·c++·网络协议·算法·http·https
竹下为生3 小时前
LeetCode --- 450周赛
算法·leetcode·职场和发展
路人与大师4 小时前
用算法实现 用统计的方式实现 用自然语言处理的方法实现 用大模型实现 专利精益化统计分析
人工智能·算法·自然语言处理