Moderator: Board moderators

#include<stdio.h>
#include<math.h>
long Number[1000009]={0,1};
void Cal()
{
long I,K,N;
for(I=2;I<1000001;I++)
{
for(K=(double)sqrt(I);K>1;K--)
{
if(I%K==0)
{
N=I/K;
if(N==K) ++Number[I];
else Number[I]+=2;
}
}
Number[I]+=2;
}
}
int main()
{
long I,K,L,M,N,Test;
Cal();
scanf("%ld",&Test);
for(;Test>0;Test--)
{
L=1;M=1;
scanf("%ld",&N);
for(I=N;I>1;I--)
if(Number[I]>M)
{
M=Number[I];
L=I;
}
printf("%ld\n",L);
}
return 0;
}
Users browsing this forum: No registered users and 1 guest