The following test case run by the test suite does not make any sense for my answer:
%%
a = [ 0 1 2 1; 0 2 1 1];
c = 1;
assert(isequal(most_change(a),c))
%%
% There is a lot of confusion about this problem. Watch this.
a = [0 1 0 0; 0 0 1 0];
c = 2;
assert(isequal(most_change(a),c))
% Now go back and read the problem description carefully.
please check.