#include
int fun(int n)
{
int c = 0;
int flag1 = 0; // 含6或者8
int flag2 = 1; // 不含4
while (n)
{
c = n % 10;
if (c == 8 || c == 6) flag1 = 1;
else if (c == 4) flag2 = 0;
n /= 10;
}
if (flag1 && flag2) return 1;
else return 0;
}
int main()
{
int sum = 0;
for (int i = 1; i <= 1000; i++)
{
if (fun(i)) sum += i;
}
printf("%d\n", sum);
return 0;
}
主要的思路就是,将每一个数都分解为单独数,然后看他是否含有6,8,4。