我们定义「顺次数」为:每一位上的数字都比前一位上的数字大 1 的整数。
请你返回由 [low, high] 范围内所有顺次数组成的 有序 列表(从小到大排序)。
示例 1:
输出:low = 100, high = 300 输出:[123,234]
示例 2:
输出:low = 1000, high = 13000 输出:[1234,2345,3456,4567,5678,6789,12345]
提示:
10 <= low <= high <= 10^9
解析
直接模拟
大概先像滑动数组一样,把数找出来再排序一下就好了
代码
class Solution {
public:
vector sequentialDigits(int low, int high) {
vector s;
for(int i = 1; i < 10 ; i ++)
{
int num =i;
for(int j = i + 1 ; j <10 ; j ++ )
{
num = num * 10 + j;
if(num>=low&&num<=high)
s.push_back(num);
}
}
sort(s.begin(),s.end());
return s;
}
};



