Y • 2个月前
int main() { // freopen("perfect.in", "r", stdin); // freopen("perfect.out", "w", stdout);
long long a, b, a1, b1, j, i, c = 0, flag;
scanf("%lld%lld", &a, &b);
a1 = sqrt(a);
b1 = sqrt(b);
for (long long i = a1; i <= b1; i++) {
long long t = i * i;
int sum = 0;
if (a <= t && t <= b) {
while (t > 0) {
sum = sum + t % 10;
t = t / 10;
}
int flag = 0;
if (sum < 2) {
flag = 1;
}
for (int j = 2; j <= sum - 1; j++) {
if ( sum % j == 0) {
flag = 1;
break;
}
}
if (flag == 0) {
c++;
}
}
}
printf("%lld", c);
return 0;
}
评论:
请先登录,才能进行评论