Cod sursa(job #844734)

Utilizator Gusti666Lucaciu Catalin Gusti666 Data 29 decembrie 2012 19:05:19
Problema Numarare triunghiuri Scor 0
Compilator fpc Status done
Runda Arhiva de probleme Marime 0.59 kb
var v:array[1..800] of integer;
n,i,aux,t,mid,hi,lo,j:integer;
f,g:text;
begin
assign(f,'nrtri.in');reset(f);
assign(g,'nrtri.out');rewrite(g);
read(f,n);
hi:=n+1;
lo:=0;
for i:=1 to n do
read(f,v[i]);
for i:=1 to n-1 do
for j:=i+1 to n do
if v[i]>v[j] then begin aux:=v[i]; v[i]:=v[j]; v[j]:=aux; end;
for i:=1 to n-1 do
for j:=i+1 to n do
while hi-lo>1 do begin
mid:=(hi+lo) div 2;
if v[mid]<v[i]+v[j] then lo:=mid
                    else hi:=mid;
end;
if v[hi]<=v[i]+v[j] then t:=t+hi-2
    else if v[lo]<=v[i]+v[j] then t:=t+lo-2;
write(g,t);
close(f);
close(g);
end.