小明对数位中含有2、0、1、9 的数字很感兴趣,在1 到40 中这样的数包
括1、2、9、10 至32、39 和40,共28 个,他们的和是574,平方和是14362。
注意,平方和是指将每个数分别平方后求和。
请问,在1 到2019 中,所有这样的数的平方和是多少?
这个题是常见的找数字的模板,就是利用%完成对每一位数字的检索,然后完成。
#include<iostream>
using namespace std;
typedef long long ll;
int main()
{
ll ans = 0;
for (ll j = 1; j <=2019; j++)
{
ll i = j;
ll ok = 0;
while (i) {
ll u = i % 10 ;
if (u == 2 || u == 0 || u == 1 || u == 9) {
ok = 1;//判断是否成功
break;
}
i /= 10;//找下一位
}
if(ok)
ans += j * j;
}
cout << ans;
return 0;
}
return code;
本文介绍了一个通过编程方式解决数学问题的方法:找出1到2019中所有包含2、0、1、9这四个数字的整数,并计算这些数的平方和。文章提供了一段C++代码实现该功能。
326

被折叠的 条评论
为什么被折叠?



