AcWing 1245. 特别数的和
原题链接
简单
作者:
_erhan
,
2024-04-09 21:54:49
,
所有人可见
,
阅读 1
#include <cstdio>
#include <cstring>
#include <iostream>
#include <algorithm>
using namespace std;
const int N = 1e4 + 10;
int n,cnt;
int main()
{
scanf("%d",&n);
for(int i = 1; i <= n; i ++) // 从1遍历到n
{
int num = i; // 先将i赋值给num,避免直接对i进行取余等操作而改变i的值影响遍历
while(num)
{
int t = num % 10; // 判断个位上的数是否为2,0,1,9
if(t == 2 || t == 0 || t == 1 || t == 9)
{
cnt += i;
break; // 条件成立,直接退出循环,不用再判断更高位上的数
}
num = num / 10; // 条件不成立,num除以10下取整继续判断更高位上的数
}
}
printf("%d",cnt);
return 0;
}