program mi prolazi samo na prvom test primjeru ;D
pa bih molio barem jedan test primjer!
pa bih molio barem jedan test primjer!
const INF=650000000.123456;
var n,np,i,j,l:integer;
ima:boolean;
kx,by:double;
x,y:array[1..105] of integer;
k:array[1..11000] of double;
t:array[1..11000] of integer;
function nagib(g,h:integer):double;
begin
if abs(x[g]-x[h])=0 then nagib:=INF else nagib:=abs((y[g]-y[h])/(x[g]-x[h]));
end;
begin
readln(n);
np:=0;
for i:=1 to n do
readln(x[i],y[i]);
for i:=1 to n-1 do
for j:=i+1 to n do begin
ima:=false;
kx:=nagib(i,j);
for l:=1 to np do begin
if (l<>i) and (abs(kx-k[l])<0.000000001) and (abs(nagib(i,t[l])-kx)<0.000000001) then begin ima:=true; break; end;
if (l<>j) and (abs(kx-k[l])<0.000000001) and (abs(nagib(j,t[l])-kx)<0.000000001) then begin ima:=true; break; end;
end;
if not ima then begin
inc(np);
k[np]:=kx;
t[np]:=i;
end;
end;
writeln(np);
readln;
end.
const INF=650000000.123456;
var n,np,i,j,l:integer;
ima:boolean;
kx,by:double;
x,y:array[1..105] of integer;
k:array[1..11000] of double;
t:array[1..11000] of integer;
function nagib(g,h:integer):double;
begin
if x[g]=x[h] then nagib:=INF else nagib:=abs((y[g]-y[h])/(x[g]-x[h]));
end;
begin
readln(n);
np:=0;
for i:=1 to n do
readln(x[i],y[i]);
for i:=1 to n-1 do
for j:=i+1 to n do begin
ima:=false;
kx:=nagib(i,j);
for l:=1 to np do begin
if abs(kx-k[l])<0.000000001 then
begin
if (l<>i) and (abs(nagib(i,t[l])-kx)<0.000000001) then begin ima:=true; break; end;
if (l<>j) and (abs(nagib(j,t[l])-kx)<0.000000001) then begin ima:=true; break; end;
end;
end;
if not ima then begin
inc(np);
k[np]:=kx;
t[np]:=i;
end;
end;
writeln(np)
end.