Pagini recente » Cod sursa (job #1482253) | Cod sursa (job #1765282) | Cod sursa (job #329337) | Cod sursa (job #1433237) | Cod sursa (job #1131860)
Program triunghiuri;
var V : array [1..900] of longint;
n,i,l,j,m : longint;
procedure swap ( var x,y : longint);
var aux : longint;
begin
aux:=x;
x:=y;
y:=aux;
end;
procedure qsort( left, right : longint);
var i,j,pivot : longint;
begin
i:=left; j:=right; pivot:=V[(i+j)div 2];
repeat
while i<pivot do i:=i+1;
while j>pivot do j:=j-1;
if i<=j then begin
swap(V[i],V[j]);
i:=i+1;
j:=j-1;
end;
until i>j;
if i<right then qsort(i,right);
if j>left then qsort(left,j);
end;
begin
assign(input,'nrtri.in'); reset(input);
assign(output,'nrtri.out'); rewrite(output);
readln(n); l:=0;
for i:=1 to n do read(V[i]);
qsort(1,n);
for i:=1 to n-2 do
for j:=i+1 to n-1 do begin
m:=j+1;
while (V[m]<=(V[i]+V[j])) and (m<=n) do begin
l:=l+1;
m:=m+1;
end;
end;
writeln(l);
close(input);
close(output);
end.