Pagini recente » Cod sursa (job #2039974) | Cod sursa (job #1529439) | Cod sursa (job #1869533) | Cod sursa (job #1820832) | Cod sursa (job #234925)
Cod sursa(job #234925)
var v:array[1..800]of integer;
c,i,n,j,aux,k,p:integer;
f,g:text;
function bs(x,y,l:integer):integer;
var k,a,b,m:integer;
begin
a:=x;
b:=y;
while(a<=b) do begin
m:=a+(b-a)div 2;
if v[m]<l then b:=m-1
else
a:=m+1;
end;
bs:=m-y+1;
end;
begin
assign(f,'nrtri.in');
reset(f);
readln(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]:=v[i];
end;
for i:=1 to n-2 do
for j:=i+1 to n-1 do
begin
c:=v[i]+v[j];
k:=bs(j+1,n,c);
p:=p+k;
end;
assign(g,'nrtri.out');
rewrite(g);
writeln(g,p);
close(f);
close(g);
end.