青岛网站设计电话,网站模板可视化编辑,番禺网站建设怎样,腾讯云可以做网站738.单调递增的数字
当且仅当每个相邻位数上的数字 x 和 y 满足 x y 时#xff0c;我们称这个整数是单调递增的。
给定一个整数 n #xff0c;返回 小于或等于 n 的最大数字#xff0c;且数字呈 单调递增 。
示例 1:
输入: n 10
输出: 9示例 2:
输入: n 1234
输…738.单调递增的数字
当且仅当每个相邻位数上的数字 x 和 y 满足 x y 时我们称这个整数是单调递增的。
给定一个整数 n 返回 小于或等于 n 的最大数字且数字呈 单调递增 。
示例 1:
输入: n 10
输出: 9示例 2:
输入: n 1234
输出: 1234示例 3:
输入: n 332
输出: 299思路
比较前后两个位上的数字大小即可需要注意的点是取数字我这里做法是转换为string然后按位取出减去‘0’的ascall码还有比较后组成新的数字方式以及回撤顺序进行比较的方式。
代码 public int monotoneIncreasingDigits(int n) {int lenString.valueOf(n).length();int pre ((int) String.valueOf(n).charAt(0))-48;int anspre;int i1;while (ilen){int temp ((int) String.valueOf(n).charAt(i))-48;if (pretemp){n (int) ((ans-1)*Math.pow(10,len-i)Math.pow(10,len-i)-1);if (i1){ii-1;pre((int) String.valueOf(n).charAt(i-1))-48;ansans/10;continue;}else return n;}else ansans*10temp;i;pretemp;}return n;}