56. 合并区间
class Solution {
public:vector<vector<int>> merge(vector<vector<int>>& intervals) {if (intervals.size() <= 1) {return intervals;}// 按区间起始位置排序sort(intervals.begin(), intervals.end());vector<vector<int>> result;result.push_back(intervals[0]);for (int i = 1; i < intervals.size(); i++) {// 获取结果中最后一个区间vector<int>& last = result.back();// 如果当前区间与最后一个区间重叠if (intervals[i][0] <= last[1]) {// 合并区间,取结束位置的较大值last[1] = max(last[1], intervals[i][1]);} else {// 不重叠,直接添加到结果result.push_back(intervals[i]);}}return result;}
};
738. 单调递增的数字
class Solution {
public:int monotoneIncreasingDigits(int n) {string strNum = to_string(n);int flat = strNum.size();for(int i=strNum.size()-1;i>0;i--){if(strNum[i]<strNum[i-1]){flat = i;strNum[i-1]--;}}for(int i = flat;i<strNum.size();i++){strNum[i] = '9';}return stoi(strNum);}
};