欢迎访问==> 【考研OR保研】机试题
题目描述
一个正整数,如果它能被 $7$ 整除,或者它的十进制表示法中某个位数上的数字为 $7$,则称其为与 $7$ 相关的数。
现求所有小于等于 $n$ 的与 $7$ 无关的正整数的平方和。
输入格式
一行,包含一个正整数 $n$。
输出格式
对于每个测试案例输出一行,输出小于等于 $n$ 的与 $7$ 无关的正整数的平方和。
数据范围
$0 < n < 100$
输入样例:
21
输出样例:
2336
C++ 代码
#include <bits/stdc++.h>
using namespace std;
int n, res;
//判断是否与7有关
bool related_to_seven(int n)
{
if(n % 7 == 0) return true;
while(n)
{
if(n % 10 == 7) return true;
n /= 10;
}
return false;
}
int main()
{
cin >> n;
for(int i = 1; i <= n; i ++)
{
if(!related_to_seven(i)) res += (i * i);
}
cout << res << endl;
return 0;
}