P8960 题解
LYJ_B_O_Creation · · 题解
思路:
通过题目,我们知道了这道题只需要判断从
由于范围不大,所以我们可以直接暴力一个区间内所有的数,然后对每个数的每一位判断,判断出一些满足要求的数,最后输出所有满足要求的数的和就行了。
代码:
#include<bits/stdc++.h>
#define int long long//开long long是个好习惯
using namespace std;
bool baozi(int x)
{
while(x)
{
int t = x % 10;
if(t == 2 || t == 0 || t == 1 || t == 9) //数位判断
{
return true;
}
x /= 10;
}
return false;
}
signed main()
{
int n , sum = 0;
cin >> n;
for(int i = 1;i <= n;i++)
{
if(baozi(i))//如果条件成立, 就让sum加上i
{
sum += i;
}
}
cout << sum << endl;//最后输出所有满足条件的数的和
return 0;
}