# 特别数的和

**题目描述**

小明对数位中含有 2、0、1、9 的数字很感兴趣（不包括前导 0），在 1 到 40 中这样的数包括 1、2、9、10 至 32、39 和 40，共 28 个，他们的和是 574。

请问，在 1 到 n 中，所有这样的数的和是多少？

**输入格式**

共一行，包含一个整数 n。

**输出格式**

共一行，包含一个整数，表示满足条件的数的和。

**数据范围**

```json
1≤n≤10000
```

**输入样例：**

```json
40
```

**输出样例：**

```json
574
```

以下代码实现了这一功能，请你填补空白处的内容：

```c
#include <iostream>

using namespace std;

int ans, n;

bool check(int n)
{
    while (n)
    {
        int tmpn = n % 10;
        if (tmpn == 2 || tmpn == 0 || tmpn == 1 || tmpn == 9)
            return true;
        __________________;
    }
    return false;
}

int main()
{
    cin >> n;

    for (int i = 1; i <= n; i++)
    {
        if (check(i))
            ans += i;
    }

    cout << ans << endl;

    return 0;
}
```

提示：

```json
只要利用模除找出含有2,0,1,9的数即可
```

## 答案

```c
n /= 10;
```

## 选项

### A

```c
n %= 10;
```

### B

```c
break;
```

### C

```c
continue;
```
