Pagini recente » Cod sursa (job #1477165) | Cod sursa (job #2464895) | Cod sursa (job #293412) | Cod sursa (job #858154) | Cod sursa (job #1105480)
program pdas1;
var a:array[0..801] of integer;
f,g:text;
i,n,j,k,u,aux,sol,poz,t:longint;
b1,b2:array[0..1 shl 17 ] of char;
p1:boolean;
procedure Sort(l, r: Integer);
var
i, j, x, y: integer;
begin
i := l; j := r; x := a[(l+r) DIV 2];
repeat
while a[i] < x do i := i + 1;
while x < a[j] do j := j - 1;
if i <= j then
begin
y := a[i]; a[i] := a[j]; a[j] := y;
i := i + 1; j := j - 1;
end;
until i > j;
if l < j then Sort(l, j);
if i < r then Sort(i, r);
end;
{procedure cauta (i,j:integer; x:longint);
var mijl:integer;
begin
if i<=j then begin
mijl:=(i+j) div 2;
if a[mijl]>=x then begin
poz:=mijl;
p1:=true;
end
else
if a[mijl]<x then cauta(i,mijl-1,x);
end;
end; }
begin
assign(f,'nrtri.in');settextbuf(g,b1);reset(F);
assign(g,'nrtri.out');settextbuf(g,b2);rewrite(G);
readln(f,n);
for i:=1 to n do
read(f,a[i]);
sort(1,n);
for t:=1 to n-2 do
for k:=t+1 to n-1 do
for i:=k+1 to n do
if a[t]+a[k]>=a[i] then inc(sol)
else break;
writeln(g,sol);
close(F);
close(G);
end.