Pagini recente » Cod sursa (job #2520260) | Cod sursa (job #2779224) | Cod sursa (job #612387) | template/despre-infoarena | Cod sursa (job #1199418)
const def=1005000;
modd=9973;
var t,ti:longint;
n,i,h:longint;
c:array[0..def+5]of boolean;
prim:array[0..3000]of longint;
nr,sum,p,d:int64;
procedure ciur();
var i,ii,hh,j,h:longint;
begin
prim[0] := 0;
for i := 2 to def do c[i] := true;
h := trunc(sqrt(def));
for i := 2 to h do
if c[i] then
begin
inc(prim[0]); prim[prim[0]] := i;
ii := i*i; hh := def div ii;
for j := 1 to hh do c[ii*j] := false;
end;
end;
begin
assign(input,'ssnd.in'); reset(input);
assign(output,'ssnd.out'); rewrite(output);
ciur();
readln(t);
for ti := 1 to t do
begin
readln(n);
nr := 1; sum := 1;
h := trunc(sqrt(nr));
i := 0;
while prim[i+1] <= n do
begin
inc(i);
p := 0; d := prim[i];
while n mod prim[i] = 0 do
begin
inc(p); d := d * prim[i];
n := n div prim[i];
end;
nr := (nr * (p+1))mod modd;
sum := (sum * (((d-1) div (prim[i]-1)) mod modd))mod modd;
end;
writeln(nr,' ',sum);
end;
close(input);
close(output);
end.