打表大法好!!!
#include<stdio.h>
int num[500005];
void AC(void)
{
int i, j;
for (i = 1; i < 500005 / 2; i++) {
for (j = i*2; j < 500005; j += i) {
num[j] += i;
}
}
}
int main(void)
{
int T, n;
scanf("%d", &T);
AC();
while (T--) {
scanf("%d", &n);
printf("%d\n", num[n]);
}
return 0;
}