Cod sursa(job #110473)
| Utilizator | Data | 26 noiembrie 2007 20:12:22 | |
|---|---|---|---|
| Problema | Fractii | Scor | 10 |
| Compilator | fpc | Status | done |
| Runda | Arhiva de probleme | Marime | 0.58 kb |
program fractii;
var n:int64;
nf:int64;
a,b,i,j,r:longint;
f,g:text;
begin
assign(f,'fractii.in');
assign(g,'fractii.out');
reset(f);
rewrite(g);
readln(f,n);
nf:=(n*(n-1)) div 2;
for j:=1 to n do
for i:=1 to j-1 do
if (i<>1) and (j mod i = 0) then nf := nf -1
else
begin
a:=j;
b:=i;
r:=j mod i;
while r<>0 do
begin
a:=b;
b:=r;
r:=a mod b;
end;
if b<>1 then nf:=nf-1;
end;
writeln(g, 2*nf + 1);
close(f);
close(g);
end.
