当前位置: 首页 > news >正文

代码随想录|Day31|贪心06|738.单调递增的数字

738.单调递增的数字

思路:

1. 从右向左遍历

从字符串的最后一位向前遍历,即从低位到高位进行检查。这是因为当我们修改某一位数字时,可能会影响到更低位的数字。

2. 检查并修改数字

在遍历过程中,如果发现当前位数字小于其前一位(即,前一位大于后一位,破坏了单调递增的规则),我们需要对前一位数字进行调整:

  • 将前一位数字减1。
  • 将这一位及之后所有位数字设置为9。
class Solution:def monotoneIncreasingDigits(self, n: int) -> int:# python的字符串不可变,因此转为lists = list(str(n))for i in range(len(s) - 1, 0, -1):# 如果前一位更大,则前一位 - 1,后序位数全部改为9if s[i-1] > s[i]:s[i-1] = str(int(s[i-1]) - 1)for j in range(i, len(s)):s[j] = '9'return int(''.join(s))
http://www.lryc.cn/news/331748.html

相关文章:

  • 机械制造学习笔记
  • Golang | Leetcode Golang题解之第3题无重复字符的最长子串
  • SWM341系列应用(上位机应用)
  • 【软件工程】详细设计(一)
  • 【AIGC】如何在Windows/Linux上部署stable diffusion
  • 基于java实现的弹幕视频网站
  • 【大数据存储】实验4 NoSQL数据库
  • 从零学算法80
  • Jupyter notebook文件默认存储路径以及更改方法
  • WPF中通过自定义Panel实现控件拖动
  • Centos7安装Docker与Docker-compose【图文教程】
  • mac电脑maven配置环境变量
  • 后端返还二进制excl表格数据时候,如何实现在前端下载表格功能及出现表格打开失败的异常处理。
  • 搞学术研究好用免费的学术版ChatGPT网站-学术AI
  • vue3从精通到入门9:计算属性computed
  • kafka面试常见问题
  • 深入解析Hadoop生态核心组件:HDFS、MapReduce和YARN
  • 【chatGPT】我:在Cadence Genus软件中,出现如下问题:......【1】
  • 面试题:JVM 调优
  • PS从入门到精通视频各类教程整理全集,包含素材、作业等(8)
  • VSCode安装及Python、Jupyter插件安装使用
  • JMeter+Grafana+influxdb 配置出现transaction无数据情况解决办法
  • Acrobat Pro DC 2023 for Mac PDF编辑管理软件
  • Python大型数据集(GPU)可视化和Pillow解释性视觉推理及材料粒子凝聚
  • 1、快速上手Docker:入门指南
  • 通用开发技能系列:Authentication、OAuth、JWT 认证策略
  • 【Leetcode】【240404】1614. Maximum Nesting Depth of the Parentheses
  • 联通iccid 19转20 使用luhn 算法的计算公式
  • I.MX6ULL的MAC网络外设设备树实现说明一
  • vue弹出的添加信息组件中 el-radio 单选框无法点击问题