在C++中查找包含数字d的数字


考虑一个数字d和上限n。我们必须在0到n的范围内找到包含d的所有数字。因此,如果n = 20且数字为3,则数字将为[3, 13]。

为了解决这个问题,我们将把每个数字作为字符串,然后如果字符串中存在该数字,则将打印该数字,否则将忽略它。

示例

#include<iostream>
using namespace std;
int getAllNumWithDigit(int n, int d) {
   string str = "";
   str += to_string(d);
   char ch = str[0];
   string p = "";
   p += ch;
   for (int i = 0; i <= n; i++) {
      str = "";
      str = str + to_string(i);
      int index = str.find(p);
      if (i == d || index!=-1)
         cout << (i) << " ";
   }
}
int main() {
   int n = 100; int d = 3;
   getAllNumWithDigit(n, d);
}

输出

3 13 23 30 31 32 33 34 35 36 37 38 39 43 53 63 73 83 93

更新日期: 2019年11月4日

102次观看

开启你的 职业

完成课程认证

开始
广告