Solution for day 6 in matlab.

This commit is contained in:
2017-12-06 12:14:15 +01:00
parent dcff672eeb
commit ed9f1f7c7d
3 changed files with 28 additions and 0 deletions

20
2017/day-06/solution.m Normal file
View File

@@ -0,0 +1,20 @@
function [cycles,repeat] = solution (division)
division = vec(division);
states = zeros(0, size(division)(1));
while ! ismember(transpose(division), states, "rows")
states = [states; transpose(division)];
[maxval, maxindex] = max(division);
division(maxindex) = 0;
for i = 1:maxval
targetIndex = mod(maxindex + i - 1, size(division)(1)) + 1;
division(targetIndex) += 1;
end
end
cycles = size(states)(1);
repeat = division;
endfunction