738. 单调递增的数字

给定一个非负整数 N,找出小于或等于 N 的最大的整数,同时这个整数需要满足其各个位数上的数字是单调递增。

(当且仅当每个相邻位数上的数字 x 和 y 满足 x <= y 时,我们称这个整数是单调递增的。)

示例 1:

输入: N = 10
输出: 9
示例 2:

输入: N = 1234
输出: 1234
示例 3:

输入: N = 332
输出: 299
说明: N 是在 [0, 10^9] 范围内的一个整数。

class Solution {public int monotoneIncreasingDigits(int N) {int res = 0, tmp = 1000000000, last = 0, except = 0;while (tmp > 0) {//一共就只能有10^9,直接一位一位的算int c = N / tmp;//如果发现右面的比左面的大,证明是这一位违反了,//这一位直接-1后面的都变成9,也就是例子:1000-1=999,这样是最大的if (c < last) {return except;}res += c * tmp;//res是10的倍数,所以-1后面就都是9了if (c > last) {last = c;except = res - 1;}//如果没有的话,减去当前这一位,然后tmp在/10相当于往下降一位N -= c * tmp;tmp /= 10;}return res;}
}

Java实现 LeetCode 738 单调递增的数字(暴力)相关推荐

  1. [Leetcode]738. 单调递增的数字

    当且仅当每个相邻位数上的数字 x 和 y 满足 x <= y 时,我们称这个整数是单调递增的. 给定一个整数 n ,返回 小于或等于 n 的最大数字,且数字呈 单调递增 . 示例 1: 输入: ...

  2. LeetCode 738. 单调递增的数字(贪心)

    1. 题目 给定一个非负整数 N,找出小于或等于 N 的最大的整数,同时这个整数需要满足其各个位数上的数字是单调递增. (当且仅当每个相邻位数上的数字 x 和 y 满足 x <= y 时,我们称 ...

  3. leetcode 738. 单调递增的数字(贪心算法)

    给定一个非负整数 N,找出小于或等于 N 的最大的整数,同时这个整数需要满足其各个位数上的数字是单调递增. (当且仅当每个相邻位数上的数字 x 和 y 满足 x <= y 时,我们称这个整数是单 ...

  4. LeetCode 738 单调递增的数字

    给定一个非负整数 N,找出小于或等于 N 的最大的整数,同时这个整数需要满足其各个位数上的数字是单调递增. (当且仅当每个相邻位数上的数字 x 和 y 满足 x <= y 时,我们称这个整数是单 ...

  5. Leetcode 738. 单调递增的数字

    题目 解题思路 思路:贪心思路,从前往后找到不符合条件的位置,然后把这个位置的数-1,然后这个位置后面的数全部改为9 循环反复即可,代码有点长,注释很齐全. 加油,再多努力! 代码 class Sol ...

  6. leetcode(力扣)738. 单调递增的数字||714. 买卖股票的最佳时机含手续费

    738. 单调递增的数字 class Solution { public:int monotoneIncreasingDigits(int n) {string strNum=to_string(n) ...

  7. 力扣刷题day32|738单调递增的数字、714买卖股票的最佳时机含手续费、968监控二叉树

    文章目录 738. 单调递增的数字 思路 难点:遍历顺序 难点:设置flag 714. 买卖股票的最佳时机含手续费 贪心思路 难点 968. 监控二叉树 思路 难点:如何隔两个节点放一个摄像头 738 ...

  8. LeetCode-Algorithms-[Mid]738. 单调递增的数字

    给定一个非负整数 N,找出小于或等于 N 的最大的整数,同时这个整数需要满足其各个位数上的数字是单调递增. (当且仅当每个相邻位数上的数字 x 和 y 满足 x <= y 时,我们称这个整数是单 ...

  9. _32LeetCode代码随想录算法训练营第三十二天-贪心算法 | 738.单调递增的数字 、714.买卖股票的最佳时机含手续费、968.监控二叉树

    _32LeetCode代码随想录算法训练营第三十二天-贪心算法 | 738.单调递增的数字 .714.买卖股票的最佳时机含手续费.968.监控二叉树 题目列表 738.单调递增的数字 714.买卖股票 ...

最新文章

  1. python类的静态属性和静态方法_详解Python中的静态方法与类成员方法
  2. 帆软finereport实现动态切换分组和列表模式
  3. pythondes加密盒子_PYTHON实现DES加密及base64源码
  4. React开发(204):react代码分割之路由懒加载
  5. 【转】Windows服务调试技巧
  6. [剑指offer][JAVA]面试题[第23题][合并K个排序链表][分治][优先队列]
  7. springboot转发http请求_网易后端实习生分享:Springboot异常和错误处理规范
  8. 浦发银行:开展互联网金融业务是与狼共舞,如何才能不失阵地?
  9. linux定时任务的配置详解
  10. 【GYM-100889 D】Dicy Numbers【数学推导求解】
  11. 稳压二极管的工作原理及稳压二极管使用电路图
  12. 颜色透明度16进制对照表
  13. 看似落魄的灵魂登场却如此隆重,风 吹散了平庸 爱漫延没有尽头
  14. RFC1191 路径MTU发现
  15. 四代增强方式和Enhancement查找方法
  16. MySQL自学笔记详细版(从安装到入门)
  17. ViewPager、Fragment和TabLayout实现切页效果
  18. Spring中Bean的生命周期以及三级缓存介绍
  19. 雨听 | 英语学习笔记(十三)~作文范文:创造一个和谐的家庭
  20. SAP 物料 移动类型

热门文章

  1. 线性代数-06-齐次、非齐次线性方程组求解
  2. 解决IntelliJIdea许可证过期,输入许可证认证不成功
  3. su和sudo命令的用法与区别
  4. C语言用字符串sex储存,C语言必须要记住的经典程序
  5. L1-054 福到了-java
  6. 2021年,企业做好私域电商的六大关键点
  7. python处理手写签名为电子签名
  8. shell编程——Shell条件判断之字符串判断
  9. bzoj1787.紧急集合(倍增LCA)
  10. 防火墙导致mysql登录不上_防火墙导致MySQL无法访问的问题解决案例