n = [5 7 3 4 6];
A = zeros(sum(n), sum(n));
for i = 1:length(n)-1
m = n(i);
for j = 1:m
next_layer = (m+1):sum(n);
neighbors = randsample(next_layer, randi([1 length(next_layer)]));
for k = 1:length(neighbors)
A(j,neighbors(k)) = 1;
A(neighbors(k),j) = 1;
end
end
end
spy(A)