class Solution {
public:
int getNum(int i,int j){
if(i+j>10) return -1;
int ans = 0;
for(int k=0;k<i;k++){
ans *= 10;
ans += j++;
}
return ans;
}
vector<int> sequentialDigits(int low, int high) {
vector<int> ans;
for(int i=1;i<=9;i++){
// 位数
for(int j=1;j<=9;j++){
// 起始第一个数字决定数字大小
int num = getNum(i,j);
if(num >= low && num <= high) ans.push_back(num);
}
}
return ans;
}
};
No.160 - LeetCode1291
最新推荐文章于 2025-12-02 18:04:47 发布
本文介绍了一个使用C++实现的算法,该算法能够生成一系列由连续递增数字组成的整数,并筛选出指定范围内的此类数字。通过遍历1到9之间的数字作为起始点,结合位数进行组合,实现了序列数字的有效生成。
193

被折叠的 条评论
为什么被折叠?



