Cod sursa(job #586967)
| Utilizator | Data | 3 mai 2011 17:10:07 | |
|---|---|---|---|
| Problema | Suma si numarul divizorilor | Scor | 10 |
| Compilator | fpc | Status | done |
| Runda | Arhiva educationala | Marime | 0.58 kb |
var t,i,j,k,l:longint;
n:int64;
a,b:array[1..100000000] of longint;
f,g:text;
begin
assign(f,'ssnd.in');
assign(g,'ssnd.out');
reset(f);
rewrite(g);
readln(f,t);
n:=100000;
for i:=1 to round(sqrt(n)) do
begin
j:=i;
while j<=n do
begin
inc(a[j]);
b[j]:=b[j]+i;
if b[j]>2000000000 then b[j]:=b[j] mod 9973;
inc(j,i);
end;
end;
for l:=1 to t do
begin
readln(f,n);
writeln(g,a[n],' ',(b[n]) mod 9973);
end;
close(g);
end.
