Cody

Problem 42639. Find the Final State of an Abelian Sandpile

Solution 750154

Submitted on 30 Sep 2015 by Guillaume
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
%% A = 1; B_correct = 1; assert(isequal(sandpile(A),B_correct))

2   Pass
%% A = [0 0 0;0 4 1;1 0 0]; B_correct = [0 1 0;1 0 2;1 1 0]; assert(isequal(sandpile(A),B_correct))

3   Pass
%% A = [0 0 0 0;0 4 4 0;0 0 0 0]; B_correct = [0 1 1 0;1 1 1 1;0 1 1 0]; assert(isequal(sandpile(A),B_correct))

4   Pass
%% A = [0 0 0 0 0;0 0 0 0 0;0 0 17 0 0;0 0 0 7 0;0 0 0 0 0]; B_correct = [0 0 1 0 0;0 2 1 2 0;1 1 1 3 1;0 2 3 1 2;0 0 1 2 0]; assert(isequal(sandpile(A),B_correct))

5   Pass
%% A = [0 0 0 0 0 0 0 0 0 0 0;0 0 0 0 0 0 0 0 0 0 0;0 0 0 0 0 0 0 0 0 0 0;0 0 0 16 2 3 13 0 0 0 0;0 0 0 5 11 10 8 0 0 0 0;0 0 0 9 7 6 12 0 0 0 0;0 0 0 4 14 15 1 0 0 0 0;0 0 0 0 0 0 0 0 0 0 0;0 0 0 0 0 0 0 0 0 0 0;0 0 0 0 0 0 0 0 0 0 0;0 0 0 0 0 0 0 0 0 0 0]; B_correct = [0 0 0 0 0 0 0 0 0 0 0;0 0 1 3 3 3 3 1 0 0 0;0 2 3 2 3 3 2 3 2 0 0;1 1 1 3 2 3 1 1 1 1 0;1 3 1 1 3 3 1 2 3 1 0;1 3 0 3 3 3 3 1 3 1 0;1 0 3 2 2 3 0 3 0 1 0;0 2 2 3 2 2 3 2 2 0 0;0 0 2 0 3 3 0 2 0 0 0;0 0 0 1 1 1 1 0 0 0 0;0 0 0 0 0 0 0 0 0 0 0]; assert(isequal(sandpile(A),B_correct))