Pagini recente » Cod sursa (job #2031146) | Cod sursa (job #2820466) | Cod sursa (job #589813) | Cod sursa (job #2942172) | Cod sursa (job #551726)
Cod sursa(job #551726)
var a:array[1..1000000]of boolean;
b,d:array[1..1000000]of longint;
t:longint; f1,f2:text;
procedure ciur;
var i,j,k:longint;
begin
for i:=1 to 1000000 do a[i]:=true;
a[1]:=false; k:=0;
for i:=1 to 1000000 do
if a[i] then
begin
j:=i*2;
while j<=1000000 do
begin
a[j]:=false;
j:=j+i;
end;
inc(k);
b[k]:=i;
end;
end;
procedure calc;
var i,j,c:longint; s,s1,s2,p,k:int64;
begin
for i:=1 to t do
begin
read(f1,k);
j:=1; p:=1; s1:=1;s2:=1;
while k>1 do
begin
d[j]:=0;
while k mod b[j]=0 do
begin
inc(d[j]);
k:=k div b[j];
end;
inc(j);
end;
s1:=1;s2:=1;
for c:=j downto 1 do
if d[c]>0 then
begin
p:=p*(d[c]+1);
s1:=s1*round(exp((d[c]+1)*ln(b[c]))-1);
s2:=s2*(b[c]-1);
end;
s:=(s1 div s2)mod 9973;
writeln(f2,p,' ',s);
end;
end;
begin
assign(f1,'grader_test1.in');
reset(f1);
assign(f2,'ssnd.out');
rewrite(f2);
readln(f1,t);
ciur;
calc;
close(f1);
close(f2);
end.