Cody

Solution 1977248

Submitted on 15 Oct 2019 by Paul Morant
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
clear board stencil stencil = [ 1 1 1 1 1 1 1 1; 2 2 2 2 2 2 2 2; 0 3 3 3 3 3 3 0; 0 4 4 4 4 4 4 0; 0 0 5 5 5 5 0 0; 0 0 6 6 6 6 0 0; 0 0 0 7 7 0 0 0; 0 0 0 8 8 0 0 0; ]; board(:,:,1) = ['bbbbyyyy';'bbrryyyg';' bbrryy ';' bbryyg ';' bbgg ';' bbbg ';' yy ';' yb ']; board(:,:,2) = [' ';'bbrryyyg';' brryyg ';' brrygg ';' bbrg ';' bbg ';' by ';' yy ']; board(:,:,3) = [' ';' ';' brry g ';' bbrygg ';' brrg ';' brg ';' br ';' bb ']; board(:,:,4) = [' ';' ';' b ';' bb ygg ';' bryg ';' rrg ';' rr ';' br ']; board(:,:,5) = [' ';' ';' ';' ';' ggg ';' ggy ';' gg ';' rr ']; board(:,:,6) = [' ';' ';' ';' ';' ';' gyy ';' gr ';' gr ']; board(:,:,7) = [' ';' ';' ';' ';' ';' ';' gg ';' gr ']; board(:,:,8) = [' ';' ';' ';' ';' ';' ';' ';' r ']; %yellow wins 12 to 11 (g,b) to 6 (r) assert(isequal(rumis_scorer4(board,stencil),'y'))

sz = 8 8 8 bb = 64×8 char array ' b' ' bb' ' ' ' ' ' ' ' ' ' ' ' ' ' b' ' bb' ' bbbb' ' bbbb' ' ' ' ' ' ' ' ' ' b' ' rr' ' brr' ' brbb' ' bbbb' ' b' ' ' ' ' ' b' ' rr' ' rrr' ' rrr' ' bbrrg' ' bbbrgg' ' ybbrggg' ' yybbrgg' ' y' ' yy' ' ryy' ' yyyy' ' grryg' ' bbrrgy' ' yyrrgrg' 'bybrrrrr' ' y' ' yy' ' yy' ' yggg' ' ggggg' ' ggggyy' ' ' ' ' ' y' ' yy' ' ygg' ' gggg' ' ' ' ' ' ' ' ' ' y' ' gg' ' ' ' ' ' ' ' ' ' ' ' ' btop = 64×1 char array 'b' 'b' ' ' ' ' ' ' ' ' ' ' ' ' 'b' 'b' 'b' 'b' ' ' ' ' ' ' ' ' 'b' 'r' 'r' 'b' 'b' 'b' ' ' ' ' 'b' 'r' 'r' 'r' 'g' 'g' 'g' 'g' 'y' 'y' 'y' 'y' 'g' 'y' 'g' 'r' 'y' 'y' 'y' 'g' 'g' 'y' ' ' ' ' 'y' 'y' 'g' 'g' ' ' ' ' ' ' ' ' 'y' 'g' ' ' ' ' ' ' ' ' ' ' ' ' score = 6 0 12 11 11 0 winner = 'y'

2   Pass
clear board stencil stencil = [ 2 2 2 2 2 2; 3 3 3 3 3 3; 4 4 4 4 4 4; 5 5 5 5 5 5; 5 5 5 5 5 5; 5 5 5 5 5 5; 5 5 5 5 5 5; 4 4 4 4 4 4; 3 3 3 3 3 3; 2 2 2 2 2 2; ]; board(:,:,1) = ['rrrrbb';'ggrbbb';'ggrrpb';'ggrpbb';'grrppb';'oorrpb';'ooppbb';'ooybbp';'ooyypp';'yyyypp']; board(:,:,2) = ['grrr b';'ggrbpb';'ggrrpb';'rrrbpb';'grbbpp';'ooobpb';'ooyyyb';'oooyyb';'oooypp';'yyyypp']; board(:,:,3) = [' ';'ggrbbb';'ggrrpb';'rrrbbb';'grpbbp';'grppbb';'gyyypb';'ogoypb';'ooo pp';' ']; board(:,:,4) = [' ';' ';'ggrrpb';'rrrbpb';'grpbpp';' rbbbb';' yyybb';'ogoypp';' ';' ']; board(:,:,5) = [' ';' ';' ';'rrrbbb';' rpppp';' r bb';' y y b';' ';' ';' ']; %blue wins 15 to 11 (r,p) to 9 (y,g) to 5 (o) assert(isequal(rumis_scorer4(board,stencil),'b'))

sz = 10 6 5 bb = 60×5 char array ' rg' ' ggg' ' gggg' 'grrrr' ' gggg' ' oog' ' oog' ' oooo' ' ooo' ' yy' ' rr' ' ggg' ' gggg' 'grrrr' 'rrrrr' 'oorrr' 'ooyyy' ' oogg' ' ooo' ' yy' ' rr' ' rrr' ' rrrr' 'rrrrr' 'rbppp' ' ropb' ' pyyy' ' yooo' ' yoo' ' yy' ' rr' ' bbb' ' rrrr' 'pbbbb' 'pbbbp' ' rbpb' 'pyyyy' ' byyy' ' yy' ' yy' ' b' ' bpb' ' pppp' 'bpbpb' 'ppbpp' 'ppbbb' ' bypb' ' bypp' ' ppp' ' pp' ' bb' ' bbb' ' bbbb' 'bbbbb' 'bpppp' 'bbbbb' 'bbbbb' ' pbbp' ' ppp' ' pp' btop = 60×1 char array 'g' 'g' 'g' 'r' 'g' 'g' 'g' 'o' 'o' 'y' 'r' 'g' 'g' 'r' 'r' 'r' 'y' 'g' 'o' 'y' 'r' 'r' 'r' 'r' 'p' 'b' 'y' 'o' 'o' 'y' 'r' 'b' 'r' 'b' 'p' 'b' 'y' 'y' 'y' 'y' 'b' 'b' 'p' 'b' 'p' 'b' 'b' 'p' 'p' 'p' 'b' 'b' 'b' 'b' 'p' 'b' 'b' 'p' 'p' 'p' score = 11 5 9 9 15 11 winner = 'b'

3   Pass
clear board stencil stencil = [ 1 2 3 4 4 4 4 4; 1 2 3 4 4 4 4 4; 1 2 3 4 4 4 4 4; 1 2 3 4 4 4 4 4; 0 0 0 0 3 3 3 3; 0 0 0 0 2 2 2 2; 0 0 0 0 1 1 1 1; ]; board(:,:,1) = ['rrbrrbbr';'rbrrbbrb';'bbrrbbrb';'rbrrbrbr';' brbr';' rrbr';' bbbr']; board(:,:,2) = [' brbbrb';' rrbbbbr';' brbbrbr';' brbbrbr';' rbrb';' brb ';' ']; board(:,:,3) = [' brbbrr';' bbbbr';' rbbrbr';' brrrr';' bb r';' ';' ']; board(:,:,4) = [' rbbr ';' rbbbr';' brrbr';' rbrr ';' ';' ';' ']; %red wins 25 to 19 assert(isequal(rumis_scorer4(board,stencil),'r'))

sz = 7 8 4 bb = 56×4 char array ' r' ' r' ' b' ' r' ' ' ' ' ' ' ' r' ' br' ' bb' ' bb' ' ' ' ' ' ' ' bbb' ' rr' ' rrr' ' rr' ' ' ' ' ' ' 'rrrr' 'rbbr' 'rbbb' 'rbbr' ' ' ' ' ' ' 'rbbb' 'bbbb' 'bbbr' 'bbrb' ' brb' ' rb' ' b' 'bbbb' 'bbbb' 'brrr' 'rrrr' ' rbb' ' rr' ' b' 'brrr' 'rbbb' 'rbbb' 'bbrr' ' br' ' bb' ' b' ' rbr' 'brrr' 'brrr' ' rrr' ' rbr' ' r' ' r' btop = 56×1 char array 'r' 'r' 'b' 'r' ' ' ' ' ' ' 'r' 'r' 'b' 'b' ' ' ' ' ' ' 'b' 'r' 'r' 'r' ' ' ' ' ' ' 'r' 'r' 'b' 'r' ' ' ' ' ' ' 'b' 'b' 'r' 'b' 'b' 'b' 'b' 'b' 'b' 'r' 'r' 'b' 'r' 'b' 'r' 'b' 'b' 'r' 'r' 'b' 'b' 'r' 'r' 'r' 'r' 'r' 'r' 'r' score = 25 0 0 0 19 0 winner = 'r'

4   Pass
clear board stencil stencil = [ 1 1 1 1 1 1 1 1; 1 2 2 2 2 2 2 1; 1 2 3 3 3 3 2 1; 1 2 3 4 4 3 2 1; 1 2 3 4 4 3 2 1; 1 2 3 3 3 3 2 1; 1 2 2 2 2 2 2 1; 1 1 1 1 1 1 1 1; ]; board(:,:,1) = ['yyyyybrr';'yyrrbbyr';'yryyyrrr';'yryyrrrr';'yyyrrrbb';'yrrrrbbb';'yyrrrgbb';'yyrrgggb']; board(:,:,2) = [' ';' r yb b ';' yyybb ';' rygrr ';' ryyggr ';' ggygrr ';' ggyggb ';' ']; board(:,:,3) = [' ';' ';' ggy ';' gb r ';' ggbr ';' ggrr ';' ';' ']; board(:,:,4) = [' ';' ';' ';' b ';' b ';' ';' ';' ']; %red wins 19 to 16 (y) to 15 (g) to 14 (b) assert(isequal(rumis_scorer4(board,stencil),'r'))

sz = 8 8 4 bb = 64×4 char array ' y' ' y' ' y' ' y' ' y' ' y' ' y' ' y' ' y' ' yr' ' r' ' r' ' yr' ' rg' ' yg' ' y' ' y' ' r' ' yyg' ' yrg' ' yyg' ' rgg' ' rg' ' r' ' y' ' ry' ' yyg' 'yybb' 'rygb' ' ryg' ' ry' ' r' ' y' ' bb' ' yyy' ' rg' ' rgb' ' rgr' ' rg' ' g' ' b' ' b' ' rb' ' rrr' ' rgr' ' brr' ' gg' ' g' ' r' ' yb' ' rb' ' rr' ' br' ' br' ' bb' ' g' ' r' ' r' ' r' ' r' ' b' ' b' ' b' ' b' btop = 64×1 char array 'y' 'y' 'y' 'y' 'y' 'y' 'y' 'y' 'y' 'r' 'r' 'r' 'r' 'g' 'g' 'y' 'y' 'r' 'g' 'g' 'g' 'g' 'g' 'r' 'y' 'y' 'g' 'b' 'b' 'g' 'y' 'r' 'y' 'b' 'y' 'g' 'b' 'r' 'g' 'g' 'b' 'b' 'b' 'r' 'r' 'r' 'g' 'g' 'r' 'b' 'b' 'r' 'r' 'r' 'b' 'g' 'r' 'r' 'r' 'r' 'b' 'b' 'b' 'b' score = 19 0 16 15 14 0 winner = 'r'

5   Pass
clear board stencil stencil = [ 0 0 0 0 1 0 0 0 0; 0 0 0 1 2 1 0 0 0; 0 0 1 2 3 2 1 0 0; 0 1 2 3 4 3 2 1 0; 1 2 3 4 5 4 3 2 1; 0 1 2 3 4 3 2 1 0; 0 0 1 2 3 2 1 0 0; 0 0 0 1 2 1 0 0 0; 0 0 0 0 1 0 0 0 0; ]; board(:,:,1) = [' o ';' oob ';' oobbp ';' obbbppp ';'obboopppo';' oobbbpp ';' ooooo ';' opo ';' o ']; board(:,:,2) = [' ';' o ';' bbb ';' bbp ';' obbppp ';' obbbp ';' bbb ';' ';' ']; board(:,:,3) = [' ';' ';' b ';' bb ';' o bbp ';' b ';' ';' ';' ']; board(:,:,4) = [' ';' ';' ';' b ';' o ';' ';' ';' ';' ']; board(:,:,5) = [' ';' ';' ';' ';' o ';' ';' ';' ';' ']; %blue wins 17 to 16 (o) to 8 (p) assert(isequal(rumis_scorer4(board,stencil),'b'))

sz = 9 9 5 bb = 81×5 char array ' ' ' ' ' ' ' ' ' o' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' o' ' b' ' o' ' ' ' ' ' ' ' ' ' ' ' o' ' b' ' boo' ' oo' ' o' ' ' ' ' ' ' ' o' ' ob' ' b' ' ob' ' bb' ' ob' ' o' ' ' ' o' ' oo' ' bbb' ' bbbb' 'obboo' ' bb' ' ob' ' p' ' o' ' ' ' b' ' bb' ' pbb' ' ppb' ' bbb' ' ob' ' o' ' ' ' ' ' ' ' p' ' pp' ' ppp' ' pp' ' o' ' ' ' ' ' ' ' ' ' ' ' p' ' pp' ' p' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' o' ' ' ' ' ' ' ' ' btop = 81×1 char array ' ' ' ' ' ' ' ' 'o' ' ' ' ' ' ' ' ' ' ' ' ' ' ' 'o' 'b' 'o' ' ' ' ' ' ' ' ' ' ' 'o' 'b' 'o' 'o' 'o' ' ' ' ' ' ' 'o' 'b' 'b' 'b' 'b' 'b' 'o' ' ' 'o' 'o' 'b' 'b' 'o' 'b' 'b' 'p' 'o' ' ' 'b' 'b' 'b' 'b' 'b' 'b' 'o' ' ' ' ' ' ' 'p' 'p' 'p' 'p' 'o' ' ' ' ' ' ' ' ' ' ' 'p' 'p' 'p' ' ' ' ' ' ' ' ' ' ' ' ' ' ' 'o' ' ' ' ' ' ' ' ' score = 0 16 0 0 17 8 winner = 'b'

6   Pass
clear board stencil stencil = [ 2 2 3 3 3 3 2 2; 2 2 4 4 4 4 2 2; 3 4 5 6 6 5 4 3; 3 4 6 7 7 6 4 3; 3 4 6 7 7 6 4 3; 3 4 5 6 6 5 4 3; 2 2 4 4 4 4 2 2; 2 2 3 3 3 3 2 2; ]; board(:,:,1) = ['rryyobpg';'ryyyobpg';'ryyoobbg';'rryoobbg';'ryyybbgg';'yyybbggg';'ybbbbggg';'yyyyyggg']; board(:,:,2) = ['ryyooopp';'rrryyppp';'rryooogg';'rrrroobb';'ryyybggg';'rybbbbbg';'bgyyyggg';'byygyygg']; board(:,:,3) = [' yyoo ';' ryyp ';'rrroobgg';'rrryobbb';'ryyyoppp';'rrrorybg';' gyybo ';' oyb ']; board(:,:,4) = [' ';' yybp ';' robop ';' gbboo ';' boybo ';' rbggpp ';' ybbo ';' ']; board(:,:,5) = [' ';' ';' boo ';' ggbb ';' oyyy ';' ppp ';' ';' ']; board(:,:,6) = [' ';' ';' oo ';' g bb ';' ooyy ';' p ';' ';' ']; board(:,:,7) = [' ';' ';' ';' o ';' oy ';' ';' ';' ']; %orange wins 12 to 11 (y,p) to 10 (r,g,b) assert(isequal(rumis_scorer4(board,stencil),'o'))

sz = 8 8 7 bb = 64×7 char array ' rr' ' rr' ' rrr' ' rrr' ' rrr' ' yrr' ' yb' ' yb' ' ry' ' yr' ' yrrr' ' rrr' ' yyyb' ' yyrr' ' bgg' ' yy' ' yyy' ' yrry' ' yyro' ' yrrggg' ' yyyooo' ' ybrb' ' byyy' ' yyo' ' yoy' ' yyyy' ' ooobbo' ' orybg' 'yyyyyoo' ' bbogp' ' byyb' ' ygy' ' ooo' ' oyyb' ' oooooo' 'ooobbbo' 'bbobyyy' ' bbrgpp' ' bybb' ' yyb' ' boo' ' bppp' ' bobpo' ' bobobb' ' bgpoyy' ' gbypp' ' ggoo' ' gy' ' pp' ' pp' ' bgg' ' bbbo' ' ggp' ' gbbp' ' gg' ' gg' ' gp' ' gp' ' ggg' ' gbb' ' ggp' ' ggg' ' gg' ' gg' btop = 64×1 char array 'r' 'r' 'r' 'r' 'r' 'r' 'b' 'b' 'y' 'r' 'r' 'r' 'b' 'r' 'g' 'y' 'y' 'y' 'o' 'g' 'o' 'b' 'y' 'o' 'y' 'y' 'o' 'g' 'o' 'p' 'b' 'y' 'o' 'b' 'o' 'o' 'y' 'p' 'b' 'b' 'o' 'p' 'o' 'b' 'y' 'p' 'o' 'y' 'p' 'p' 'g' 'o' 'p' 'p' 'g' 'g' 'p' 'p' 'g' 'b' 'p' 'g' 'g' 'g' score = 10 12 11 10 10 11 winner = 'o'

7   Pass
ind = randi(6); switch ind case 1 clear board stencil stencil = [ 1 1 1 1 1 1 1 1; 2 2 2 2 2 2 2 2; 0 3 3 3 3 3 3 0; 0 4 4 4 4 4 4 0; 0 0 5 5 5 5 0 0; 0 0 6 6 6 6 0 0; 0 0 0 7 7 0 0 0; 0 0 0 8 8 0 0 0; ]; board(:,:,1) = ['bbbbyyyy';'bbrryyyg';' bbrryy ';' bbryyg ';' bbgg ';' bbbg ';' yy ';' yb ']; board(:,:,2) = [' ';'bbrryyyg';' brryyg ';' brrygg ';' bbrg ';' bbg ';' by ';' yy ']; board(:,:,3) = [' ';' ';' brry g ';' bbrygg ';' brrg ';' brg ';' br ';' bb ']; board(:,:,4) = [' ';' ';' b ';' bb ygg ';' bryg ';' rrg ';' rr ';' br ']; board(:,:,5) = [' ';' ';' ';' ';' ggg ';' ggy ';' gg ';' rr ']; board(:,:,6) = [' ';' ';' ';' ';' ';' gyy ';' gr ';' gr ']; board(:,:,7) = [' ';' ';' ';' ';' ';' ';' gg ';' gr ']; board(:,:,8) = [' ';' ';' ';' ';' ';' ';' ';' r ']; assert(isequal(rumis_scorer4(board,stencil),'y')) case 2 clear board stencil stencil = [ 2 2 2 2 2 2; 3 3 3 3 3 3; 4 4 4 4 4 4; 5 5 5 5 5 5; 5 5 5 5 5 5; 5 5 5 5 5 5; 5 5 5 5 5 5; 4 4 4 4 4 4; 3 3 3 3 3 3; 2 2 2 2 2 2; ]; board(:,:,1) = ['rrrrbb';'ggrbbb';'ggrrpb';'ggrpbb';'grrppb';'oorrpb';'ooppbb';'ooybbp';'ooyypp';'yyyypp']; board(:,:,2) = ['grrr b';'ggrbpb';'ggrrpb';'rrrbpb';'grbbpp';'ooobpb';'ooyyyb';'oooyyb';'oooypp';'yyyypp']; board(:,:,3) = [' ';'ggrbbb';'ggrrpb';'rrrbbb';'grpbbp';'grppbb';'gyyypb';'ogoypb';'ooo pp';' ']; board(:,:,4) = [' ';' ';'ggrrpb';'rrrbpb';'grpbpp';' rbbbb';' yyybb';'ogoypp';' ';' ']; board(:,:,5) = [' ';' ';' ';'rrrbbb';' rpppp';' r bb';' y y b';' ';' ';' ']; assert(isequal(rumis_scorer4(board,stencil),'b')) case 3 clear board stencil stencil = [ 1 2 3 4 4 4 4 4; 1 2 3 4 4 4 4 4; 1 2 3 4 4 4 4 4; 1 2 3 4 4 4 4 4; 0 0 0 0 3 3 3 3; 0 0 0 0 2 2 2 2; 0 0 0 0 1 1 1 1; ]; board(:,:,1) = ['rrbrrbbr';'rbrrbbrb';'bbrrbbrb';'rbrrbrbr';' brbr';' rrbr';' bbbr']; board(:,:,2) = [' brbbrb';' rrbbbbr';' brbbrbr';' brbbrbr';' rbrb';' brb ';' ']; board(:,:,3) = [' brbbrr';' bbbbr';' rbbrbr';' brrrr';' bb r';' ';' ']; board(:,:,4) = [' rbbr ';' rbbbr';' brrbr';' rbrr ';' ';' ';' ']; assert(isequal(rumis_scorer4(board,stencil),'r')) case 4 clear board stencil stencil = [ 1 1 1 1 1 1 1 1; 1 2 2 2 2 2 2 1; 1 2 3 3 3 3 2 1; 1 2 3 4 4 3 2 1; 1 2 3 4 4 3 2 1; 1 2 3 3 3 3 2 1; 1 2 2 2 2 2 2 1; 1 1 1 1 1 1 1 1; ]; board(:,:,1) = ['yyyyybrr';'yyrrbbyr';'yryyyrrr';'yryyrrrr';'yyyrrrbb';'yrrrrbbb';'yyrrrgbb';'yyrrgggb']; board(:,:,2) = [' ';' r yb b ';' yyybb ';' rygrr ';' ryyggr ';' ggygrr ';' ggyggb ';' ']; board(:,:,3) = [' ';' ';' ggy ';' gb r ';' ggbr ';' ggrr ';' ';' ']; board(:,:,4) = [' ';' ';' ';' b ';' b ';' ';' ';' ']; assert(isequal(rumis_scorer4(board,stencil),'r')) case 5 clear board stencil stencil = [ 0 0 0 0 1 0 0 0 0; 0 0 0 1 2 1 0 0 0; 0 0 1 2 3 2 1 0 0; 0 1 2 3 4 3 2 1 0; 1 2 3 4 5 4 3 2 1; 0 1 2 3 4 3 2 1 0; 0 0 1 2 3 2 1 0 0; 0 0 0 1 2 1 0 0 0; 0 0 0 0 1 0 0 0 0; ]; board(:,:,1) = [' o ';' oob ';' oobbp ';' obbbppp ';'obboopppo';' oobbbpp ';' ooooo ';' opo ';' o ']; board(:,:,2) = [' ';' o ';' bbb ';' bbp ';' obbppp ';' obbbp ';' bbb ';' ';' ']; board(:,:,3) = [' ';' ';' b ';' bb ';' o bbp ';' b ';' ';' ';' ']; board(:,:,4) = [' ';' ';' ';' b ';' o ';' ';' ';' ';' ']; board(:,:,5) = [' ';' ';' ';' ';' o ';' ';' ';' ';' ']; assert(isequal(rumis_scorer4(board,stencil),'b')) case 6 clear board stencil stencil = [ 2 2 3 3 3 3 2 2; 2 2 4 4 4 4 2 2; 3 4 5 6 6 5 4 3; 3 4 6 7 7 6 4 3; 3 4 6 7 7 6 4 3; 3 4 5 6 6 5 4 3; 2 2 4 4 4 4 2 2; 2 2 3 3 3 3 2 2; ]; board(:,:,1) = ['rryyobpg';'ryyyobpg';'ryyoobbg';'rryoobbg';'ryyybbgg';'yyybbggg';'ybbbbggg';'yyyyyggg']; board(:,:,2) = ['ryyooopp';'rrryyppp';'rryooogg';'rrrroobb';'ryyybggg';'rybbbbbg';'bgyyyggg';'byygyygg']; board(:,:,3) = [' yyoo ';' ryyp ';'rrroobgg';'rrryobbb';'ryyyoppp';'rrrorybg';' gyybo ';' oyb ']; board(:,:,4) = [' ';' yybp ';' robop ';' gbboo ';' boybo ';' rbggpp ';' ybbo ';' ']; board(:,:,5) = [' ';' ';' boo ';' ggbb ';' oyyy ';' ppp ';' ';' ']; board(:,:,6) = [' ';' ';' oo ';' g bb ';' ooyy ';' p ';' ';' ']; board(:,:,7) = [' ';' ';' ';' o ';' oy ';' ';' ';' ']; assert(isequal(rumis_scorer4(board,stencil),'o')) end

sz = 10 6 5 bb = 60×5 char array ' rg' ' ggg' ' gggg' 'grrrr' ' gggg' ' oog' ' oog' ' oooo' ' ooo' ' yy' ' rr' ' ggg' ' gggg' 'grrrr' 'rrrrr' 'oorrr' 'ooyyy' ' oogg' ' ooo' ' yy' ' rr' ' rrr' ' rrrr' 'rrrrr' 'rbppp' ' ropb' ' pyyy' ' yooo' ' yoo' ' yy' ' rr' ' bbb' ' rrrr' 'pbbbb' 'pbbbp' ' rbpb' 'pyyyy' ' byyy' ' yy' ' yy' ' b' ' bpb' ' pppp' 'bpbpb' 'ppbpp' 'ppbbb' ' bypb' ' bypp' ' ppp' ' pp' ' bb' ' bbb' ' bbbb' 'bbbbb' 'bpppp' 'bbbbb' 'bbbbb' ' pbbp' ' ppp' ' pp' btop = 60×1 char array 'g' 'g' 'g' 'r' 'g' 'g' 'g' 'o' 'o' 'y' 'r' 'g' 'g' 'r' 'r' 'r' 'y' 'g' 'o' 'y' 'r' 'r' 'r' 'r' 'p' 'b' 'y' 'o' 'o' 'y' 'r' 'b' 'r' 'b' 'p' 'b' 'y' 'y' 'y' 'y' 'b' 'b' 'p' 'b' 'p' 'b' 'b' 'p' 'p' 'p' 'b' 'b' 'b' 'b' 'p' 'b' 'b' 'p' 'p' 'p' score = 11 5 9 9 15 11 winner = 'b'

8   Pass
ind = randi(6); switch ind case 1 clear board stencil stencil = [ 1 1 1 1 1 1 1 1; 2 2 2 2 2 2 2 2; 0 3 3 3 3 3 3 0; 0 4 4 4 4 4 4 0; 0 0 5 5 5 5 0 0; 0 0 6 6 6 6 0 0; 0 0 0 7 7 0 0 0; 0 0 0 8 8 0 0 0; ]; board(:,:,1) = ['bbbbyyyy';'bbrryyyg';' bbrryy ';' bbryyg ';' bbgg ';' bbbg ';' yy ';' yb ']; board(:,:,2) = [' ';'bbrryyyg';' brryyg ';' brrygg ';' bbrg ';' bbg ';' by ';' yy ']; board(:,:,3) = [' ';' ';' brry g ';' bbrygg ';' brrg ';' brg ';' br ';' bb ']; board(:,:,4) = [' ';' ';' b ';' bb ygg ';' bryg ';' rrg ';' rr ';' br ']; board(:,:,5) = [' ';' ';' ';' ';' ggg ';' ggy ';' gg ';' rr ']; board(:,:,6) = [' ';' ';' ';' ';' ';' gyy ';' gr ';' gr ']; board(:,:,7) = [' ';' ';' ';' ';' ';' ';' gg ';' gr ']; board(:,:,8) = [' ';' ';' ';' ';' ';' ';' ';' r ']; assert(isequal(rumis_scorer4(board,stencil),'y')) case 2 clear board stencil stencil = [ 2 2 2 2 2 2; 3 3 3 3 3 3; 4 4 4 4 4 4; 5 5 5 5 5 5; 5 5 5 5 5 5; 5 5 5 5 5 5; 5 5 5 5 5 5; 4 4 4 4 4 4; 3 3 3 3 3 3; 2 2 2 2 2 2; ]; board(:,:,1) = ['rrrrbb';'ggrbbb';'ggrrpb';'ggrpbb';'grrppb';'oorrpb';'ooppbb';'ooybbp';'ooyypp';'yyyypp']; board(:,:,2) = ['grrr b';'ggrbpb';'ggrrpb';'rrrbpb';'grbbpp';'ooobpb';'ooyyyb';'oooyyb';'oooypp';'yyyypp']; board(:,:,3) = [' ';'ggrbbb';'ggrrpb';'rrrbbb';'grpbbp';'grppbb';'gyyypb';'ogoypb';'ooo pp';' ']; board(:,:,4) = [' ';' ';'ggrrpb';'rrrbpb';'grpbpp';' rbbbb';' yyybb';'ogoypp';' ';' ']; board(:,:,5) = [' ';' ';' ';'rrrbbb';' rpppp';' r bb';' y y b';' ';' ';' ']; assert(isequal(rumis_scorer4(board,stencil),'b')) case 3 clear board stencil stencil = [ 1 2 3 4 4 4 4 4; 1 2 3 4 4 4 4 4; 1 2 3 4 4 4 4 4; 1 2 3 4 4 4 4 4; 0 0 0 0 3 3 3 3; 0 0 0 0 2 2 2 2; 0 0 0 0 1 1 1 1; ]; board(:,:,1) = ['rrbrrbbr';'rbrrbbrb';'bbrrbbrb';'rbrrbrbr';' brbr';' rrbr';' bbbr']; board(:,:,2) = [' brbbrb';' rrbbbbr';' brbbrbr';' brbbrbr';' rbrb';' brb ';' ']; board(:,:,3) = [' brbbrr';' bbbbr';' rbbrbr';' brrrr';' bb r';' ';' ']; board(:,:,4) = [' rbbr ';' rbbbr';' brrbr';' rbrr ';' ';' ';' ']; assert(isequal(rumis_scorer4(board,stencil),'r')) case 4 clear board stencil stencil = [ 1 1 1 1 1 1 1 1; 1 2 2 2 2 2 2 1; 1 2 3 3 3 3 2 1; 1 2 3 4 4 3 2 1; 1 2 3 4 4 3 2 1; 1 2 3 3 3 3 2 1; 1 2 2 2 2 2 2 1; 1 1 1 1 1 1 1 1; ]; board(:,:,1) = ['yyyyybrr';'yyrrbbyr';'yryyyrrr';'yryyrrrr';'yyyrrrbb';'yrrrrbbb';'yyrrrgbb';'yyrrgggb']; board(:,:,2) = [' ';' r yb b ';' yyybb ';' rygrr ';' ryyggr ';' ggygrr ';' ggyggb ';' ']; board(:,:,3) = [' ';' ';' ggy ';' gb r ';' ggbr ';' ggrr ';' ';' ']; board(:,:,4) = [' ';' ';' ';' b ';' b ';' ';' ';' ']; assert(isequal(rumis_scorer4(board,stencil),'r')) case 5 clear board stencil stencil = [ 0 0 0 0 1 0 0 0 0; 0 0 0 1 2 1 0 0 0; 0 0 1 2 3 2 1 0 0; 0 1 2 3 4 3 2 1 0; 1 2 3 4 5 4 3 2 1; 0 1 2 3 4 3 2 1 0; 0 0 1 2 3 2 1 0 0; 0 0 0 1 2 1 0 0 0; 0 0 0 0 1 0 0 0 0; ]; board(:,:,1) = [' o ';' oob ';' oobbp ';' obbbppp ';'obboopppo';' oobbbpp ';' ooooo ';' opo ';' o ']; board(:,:,2) = [' ';' o ';' bbb ';' bbp ';' obbppp ';' obbbp ';' bbb ';' ';' ']; board(:,:,3) = [' ';' ';' b ';' bb ';' o bbp ';' b ';' ';' ';' ']; board(:,:,4) = [' ';' ';' ';' b ';' o ';' ';' ';' ';' ']; board(:,:,5) = [' ';' ';' ';' ';' o ';' ';' ';' ';' ']; assert(isequal(rumis_scorer4(board,stencil),'b')) case 6 clear board stencil stencil = [ 2 2 3 3 3 3 2 2; 2 2 4 4 4 4 2 2; 3 4 5 6 6 5 4 3; 3 4 6 7 7 6 4 3; 3 4 6 7 7 6 4 3; 3 4 5 6 6 5 4 3; 2 2 4 4 4 4 2 2; 2 2 3 3 3 3 2 2; ]; board(:,:,1) = ['rryyobpg';'ryyyobpg';'ryyoobbg';'rryoobbg';'ryyybbgg';'yyybbggg';'ybbbbggg';'yyyyyggg']; board(:,:,2) = ['ryyooopp';'rrryyppp';'rryooogg';'rrrroobb';'ryyybggg';'rybbbbbg';'bgyyyggg';'byygyygg']; board(:,:,3) = [' yyoo ';' ryyp ';'rrroobgg';'rrryobbb';'ryyyoppp';'rrrorybg';' gyybo ';' oyb ']; board(:,:,4) = [' ';' yybp ';' robop ';' gbboo ';' boybo ';' rbggpp ';' ybbo ';' ']; board(:,:,5) = [' ';' ';' boo ';' ggbb ';' oyyy ';' ppp ';' ';' ']; board(:,:,6) = [' ';' ';' oo ';' g bb ';' ooyy ';' p ';' ';' ']; board(:,:,7) = [' ';' ';' ';' o ';' oy ';' ';' ';' ']; assert(isequal(rumis_scorer4(board,stencil),'o')) end

sz = 9 9 5 bb = 81×5 char array ' ' ' ' ' ' ' ' ' o' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' o' ' b' ' o' ' ' ' ' ' ' ' ' ' ' ' o' ' b' ' boo' ' oo' ' o' ' ' ' ' ' ' ' o' ' ob' ' b' ' ob' ' bb' ' ob' ' o' ' ' ' o' ' oo' ' bbb' ' bbbb' 'obboo' ' bb' ' ob' ' p' ' o' ' ' ' b' ' bb' ' pbb' ' ppb' ' bbb' ' ob' ' o' ' ' ' ' ' ' ' p' ' pp' ' ppp' ' pp' ' o' ' ' ' ' ' ' ' ' ' ' ' p' ' pp' ' p' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' o' ' ' ' ' ' ' ' ' btop = 81×1 char array ' ' ' ' ' ' ' ' 'o' ' ' ' ' ' ' ' ' ' ' ' ' ' ' 'o' 'b' 'o' ' ' ' ' ' ' ' ' ' ' 'o' 'b' 'o' 'o' 'o' ' ' ' ' ' ' 'o' 'b' 'b' 'b' 'b' 'b' 'o' ' ' 'o' 'o' 'b' 'b' 'o' 'b' 'b' 'p' 'o' ' ' 'b' 'b' 'b' 'b' 'b' 'b' 'o' ' ' ' ' ' ' 'p' 'p' 'p' 'p' 'o' ' ' ' ' ' ' ' ' ' ' 'p' 'p' 'p' ' ' ' ' ' ' ' ' ' ' ' ' ' ' 'o' ' ' ' ' ' ' ' ' score = 0 16 0 0 17 8 winner = 'b'