| Code: |
[n m]=size(a);
z=n*m;
for i=1:z
p{i}=i;
end
for i=';;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;'
for k=1:z
e=p{k}(end);
h = [];
if e+n<=z & a(e+n)==a(e)+1
h = e+n;
elseif e>n & a(e-n)==a(e)+1
f = e+n;
l = e-1;
g = mod(l,n);
o = a(e) + 1;
if f<=z & a(f)==o
h = f;
elseif e>n & a(e-n)==o
h = e-n;
elseif mod(e-1,n)<n-1 & a(e+1)==a(e)+1
elseif g<n-1 & a(e+1)==o
h = e+1;
elseif mod(e-1,n)>0 & a(e-1)==a(e)+1
h = e-1;
elseif g>0 & a(l)==o
h = l;
end
p{k} = [p{k};h];
d(k) = nnz(p{k});
end
end
[y b]=max(d);
b = p{b};
|