i always receive wrong answer.......but in my computer this code work fast.....
whta's wrong in this code.....
include
include
include
include
using namespace std;
long int answer[500001];
int precompute()
{
long int i,j;
for(i=0;i<=500000;i++)
answer[i]=1;
for(i=0;i<=707;i++)
answer[i*i]=i+1;
answer[0]=1;
answer[1]=1;
answer[2]=1;
answer[3]=1;
for(i=2;i<=250000;i++)
{
for(j=i+1;j<=(500000/i);j++)
{
answer[i*j]=answer[i*j]+j+i;
}
}
return 0;
}
int main(){
long int t;
long int N,i;
precompute();
scanf("%ld",&t);
while(t--)
{
scanf("%ld",&N);
printf("%ld\n",answer[N]);
}
return 0;
}