zhyf • 2天前
using namespace std; int iszhishu(int x);
int main() {
int m;
cin >> m;
for (int j = 0; j < m; j++) {
int n, sum = 0;
cin >> n;
for (int i = 1; i <= sqrt(n); i++) {
if (n % i == 0) {
sum += iszhishu(i);
if (i != n / i)
sum += iszhishu(n / i);
}
}
cout << sum << endl;
}
return 0;
}
int iszhishu(int x) {
int a = x;
if (a == 2 || a == 3) {
return a;
}
for (int k = 2; k <= sqrt(a); k++) {
if (a % k == 0)
return 0;
else if (k == (int)sqrt(a))
return a;
}
return 0;
}
评论:
请先登录,才能进行评论