738.单调递增的数字
给定一个非负整数 N,找出小于或等于 N 的最大的整数,同时这个整数需要满足其各个位数上的数字是单调递增。
(当且仅当每个相邻位数上的数字 x 和 y 满足 x <= y 时,我们称这个整数是单调递增的。)
示例 1:
- 输入: N = 10
- 输出: 9
示例 2:
- 输入: N = 1234
- 输出: 1234
示例 3:
- 输入: N = 332
- 输出: 299
java
class Solution {
public int[][] merge(int[][] intervals) {
List<int[]> res=new LinkedList<>();
Arrays.sort(intervals, (a,b)->Integer.compare(a[0], b[0]));
int start=intervals[0][0];
int end =intervals[0][1];
for(int i=1;i<intervals.length;i++){
if(intervals[i][0]>end){//不重叠
res.add(new int[]{start, end});//将当前节点加入res
start=intervals[i][0]; //更新start
end=intervals[i][1];
}else{
end=Math.max(end, intervals[i][1]); //更新最大右边界
}
}
res.add(new int[]{start, end});
return res.toArray(new int[res.size()][]);
}
}