Pagini recente » Cod sursa (job #3225359) | Cod sursa (job #928265) | Cod sursa (job #1183585) | Cod sursa (job #1259470) | Cod sursa (job #2000480)
#include <stdio.h>
#include <stdlib.h>
#define File_in "ssnd.in"
#define File_out "ssnd.out"
#define MAX 1000000
char prim[MAX];
int nr_div (int n){
int nr = 2,i;
if(n == 1 || n == 0 )
return 1;
for ( i= 2; i * i < n; i++ )
if( n % i == 0)
nr += 2;
if ( i * i == n)
nr++;
nr%=9973;
return nr;
}
int sum_div (int n){
int s = 1+ n ,i;
if(n == 1 || n == 0 )
return n;
for ( i= 2; i * i < n; i++ )
if( n % i == 0)
s += i + n/i;
if ( i * i == n)
s+=i;
return s;
}
int main()
{
freopen(File_in, "r", stdin);
freopen(File_out, "w", stdout);
int n,i,j,t,k;
scanf("%d",&t);
for ( k = 1; k <= t; k++)
{
scanf("%d",&n);
for ( i = 2; i*i <= n; i++){
if( prim[i] == 0)
for(j= i*i; j<= n; j +=i)
prim[j] = 1;
}
if(prim[n]==0&&n!=1)
printf("%d %d\n",2,1+n);
else
printf("%d %d\n", nr_div(n), sum_div(n));
}
return 0;
}