Cod sursa(job #845096)

Utilizator Gusti666Lucaciu Catalin Gusti666 Data 30 decembrie 2012 14:14:31
Problema Numarare triunghiuri Scor 100
Compilator fpc Status done
Runda Arhiva de probleme Marime 0.58 kb
var v:array[1..805] of longint;
n,i,aux,t,mid,hi,lo,j:longint;
f,g:text;
begin
assign(f,'nrtri.in');reset(f);
assign(g,'nrtri.out');rewrite(g);
read(f,n);
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-2 do
for j:=i+1 to n-1  do  begin
hi:=n+1;
lo:=j;
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[lo]<=v[i]+v[j] then t:=t+lo-j;
 end;
write(g,t);
close(f);
close(g);
end.