Pagini recente » Cod sursa (job #2261806) | Cod sursa (job #1755339) | Cod sursa (job #885035) | Cod sursa (job #730060) | Cod sursa (job #113218)
Cod sursa(job #113218)
type vector=array[1..100000000] of byte;
var a,b:vector;
n:longint;
f,g:text;
function cmmdc(a,b:longint):longint;
var r:longint;
begin
while b<>0 do
begin
r:=a mod b;
a:=b;
b:=r;
end;
cmmdc:=a;
end;
function cate(n:longint):longint;
var i,nr:longint;
begin
nr:=0;
for i:=1 to n-1 do
if cmmdc(i,n)=1 then
inc(nr);
cate:=nr;
end;
procedure suma(var a,b,c:vector;m,n:longint;var p:longint);
var x,t,i:longint;
begin
if m<n then
begin
for i:=m+1 to n do
a[i]:=0;
p:=n;
end
else
begin
for i:=n+1 to m do
b[i]:=0;
p:=m;
end;
t:=0;
for i:=1 to p do begin
x:=a[i]+b[i]+t;
c[i]:=x mod 10;
t:=x div 10;
end;
if t>0 then
begin
inc(p);
c[p]:=t;
end;
end;
procedure nr(n:longint);
var i,k,x,m:longint;
begin
m:=1;
a[1]:=1;
for i:=2 to n do
begin
x:=2*cate(i);
k:=0;
repeat
inc(k);
b[k]:=x mod 10;
x:=x div 10;
until x=0;
suma(a,b,a,m,k,m);
end;
for i:=m downto 1 do
write(g,a[i]);
close(g);
end;
begin
assign(f,'fractii.in');reset(f);
assign(g,'fractii.out');rewrite(g);
readln(f,n);
nr(n);
end.