Cody

Solution 406513

Submitted on 20 Feb 2014 by Alfonso Nieto-Castanon
This solution is locked. To view this solution, you need to provide a solution of the same size or smaller.

Test Suite

Test Status Code Input and Output
1   Pass
%% dependencies = [ 0 0 1 0 ]; order = calculation_order(dependencies); order_correct = [ 1 2 ]; assert(isequal(order_correct,order));
2   Pass
%% dependencies = [ 0 1 0 0 0 0 0 0 0 0 1 0 0 0 0 1 0 0 0 0 1 1 1 1 0 ]; order = calculation_order(dependencies); order_correct = sortrows([ 2 1 4 3 5 ; 2 1 3 4 5 ]); assert(isequal(order_correct,order));
3   Pass
%% dependencies = [ 0 1 0 0 0 1 0 0 0 0 1 0 0 0 0 1 0 0 0 0 1 1 1 1 0 ]; order = calculation_order(dependencies); assert(isequal([],order));
4   Pass
%% dependencies = [ 0 1 1 1 1 0 0 1 1 1 0 0 0 1 1 0 0 0 0 1 0 0 0 0 0 ]; order = calculation_order(dependencies); ordered = dependencies(order,order); assert(~nnz(triu(ordered-diag(diag(ordered)))));
5   Pass
%% dependencies_ = [ 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 1 0 0 0 ]; order_ = randperm(size(dependencies_,1)); dependencies = dependencies_(order_,order_); order_ = 0; order = calculation_order(dependencies); assert(isequal(size(unique(order,'rows'),1),30)); for ii = 1:size(order,1) ordered = dependencies(order(ii,:),order(ii,:)); assert(~nnz(triu(ordered-diag(diag(ordered))))); end