Pagini recente » Cod sursa (job #3166612) | Cod sursa (job #1184819) | Cod sursa (job #747435) | Cod sursa (job #303616) | Cod sursa (job #427454)
Cod sursa(job #427454)
program primeknig;
const bitek:array[0..7] of byte = (1,2,4,8,16,32,64,128);
var be,ki:text;
v:array[1..250000] of byte;
n,i,j:longint;
function bennevan( x:longint ):boolean;
var m:byte;
begin
m:= x and 7;
x:= x shr 3;
bennevan := ((v[x]) and (bitek[m])) <> 0;
end;
procedure berak( x:longint);
var m:byte;
begin
m:= x and 7;
x:= x shr 3;
v[x]:= v[x] or bitek[m];
end;
procedure kovprim;inline;
begin
repeat
i:=i+2
until not(bennevan(i));
end;
begin
assign(be,'ciur.in');
assign(ki,'ciur.out');
reset(be);
rewrite(ki);
readln(be,n);
i:=3;
while i*i <= n do
begin
j:=i*i;
while j <= n do
begin
berak( j );
j:=j + i;
end;
kovprim;
end;
j:=0;
if n >1 then j:=1;
i:=3;
while i <= n do
begin
if not bennevan(i) then inc(j);
inc(i,2);
end;
writeln(ki,j);
close(ki);
end.