Sum of elements of a matrix such that no row or column repeats

1 view (last 30 days)
If i choose an element of a matrix than the next element used should be from different row and different column. If there is a nxn matrix then the sum of n elements of the matrix should come from the elements of different row and different column.

Accepted Answer

Torsten
Torsten on 21 May 2021
p = randperm(n);
sum = 0.0;
for k = 1:n
sum = sum + a(k,p(k));
end
where a is the nxn matrix.
  4 Comments
Lovish Goyal
Lovish Goyal on 21 May 2021
Is there any way that we can also reject all the main diaginal elements. like k should not be equal to p(k).
Torsten
Torsten on 21 May 2021
p = randperm(n) ;
while any(p==(1:n))
p = randperm(n);
end
% Rest is the same

Sign in to comment.

More Answers (0)

Tags

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!