小明对数位中含有 2、0、1、9 的数字很感兴趣,在 1 到 40 中这样的数包括 1、2、9、10 至 32、39 和 40,共 28 个,他们的和是 574,平方和是 14362。注意,平方和是指将每个数分别平方后求和。
请问,在 1 到 2019 中,所有这样的数的平方和是多少?
public class 平方和 {
public static void main(String[] args) {
long sum = 0,res = 0;
for(int i=1;i<=2019;i++) {
char[] a = (i+"").toCharArray();
for(int j=0;j<a.length;j++) {
if(a[j]=='2' || a[j]=='0' || a[j]=='1' || a[j]=='9') {
sum = i*i;
res += sum;
break;
}
}
}
System.out.println(res);
}
}