set(0,'RecursionLimit',5000)
c= f(0, 1, a, b);
function [B, A] = f(l, t, a, b)
q = t(nnz(t));
j = find(a(q,:));
j(find(j==q))=[];
j(find(j<=q))=[];
j(find( intersect(j,t) ) ) = [];
A = l;
B = t;
for i = j
[d c] = f(l+ norm(b(q,:) - b(i,:)), [t i], a, b);
if c > A
B = d;
A = c;
end
end