Cody

Solution 189430

Submitted on 11 Jan 2013 by Aurelien Queffurust
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
%% words={'AAA','BED','BEG','BAD'}; assert(isequal(hangman(words),'B'));
alphabet = ABCDEFGHIJKLMNOPQRSTUVWXYZ mini = 2 mini = 2 1 mini = 2 1 4 mini = 2 1 4 2 mini = 2 1 4 2 2 mini = 2 1 4 2 2 4 mini = 2 1 4 2 2 4 3 mini = 2 1 4 2 2 4 3 4 mini = 2 1 4 2 2 4 3 4 4 mini = 2 1 4 2 2 4 3 4 4 4 mini = 2 1 4 2 2 4 3 4 4 4 4 mini = 2 1 4 2 2 4 3 4 4 4 4 4 mini = 2 1 4 2 2 4 3 4 4 4 4 4 4 mini = 2 1 4 2 2 4 3 4 4 4 4 4 4 4 mini = 2 1 4 2 2 4 3 4 4 4 4 4 4 4 4 mini = 2 1 4 2 2 4 3 4 4 4 4 4 4 4 4 4 mini = Columns 1 through 16 2 1 4 2 2 4 3 4 4 4 4 4 4 4 4 4 Column 17 4 mini = Columns 1 through 16 2 1 4 2 2 4 3 4 4 4 4 4 4 4 4 4 Columns 17 through 18 4 4 mini = Columns 1 through 16 2 1 4 2 2 4 3 4 4 4 4 4 4 4 4 4 Columns 17 through 19 4 4 4 mini = Columns 1 through 16 2 1 4 2 2 4 3 4 4 4 4 4 4 4 4 4 Columns 17 through 20 4 4 4 4 mini = Columns 1 through 16 2 1 4 2 2 4 3 4 4 4 4 4 4 4 4 4 Columns 17 through 21 4 4 4 4 4 mini = Columns 1 through 16 2 1 4 2 2 4 3 4 4 4 4 4 4 4 4 4 Columns 17 through 22 4 4 4 4 4 4 mini = Columns 1 through 16 2 1 4 2 2 4 3 4 4 4 4 4 4 4 4 4 Columns 17 through 23 4 4 4 4 4 4 4 mini = Columns 1 through 16 2 1 4 2 2 4 3 4 4 4 4 4 4 4 4 4 Columns 17 through 24 4 4 4 4 4 4 4 4 mini = Columns 1 through 16 2 1 4 2 2 4 3 4 4 4 4 4 4 4 4 4 Columns 17 through 25 4 4 4 4 4 4 4 4 4 mini = Columns 1 through 16 2 1 4 2 2 4 3 4 4 4 4 4 4 4 4 4 Columns 17 through 26 4 4 4 4 4 4 4 4 4 4 tf = 1 loc = 2 letter = B
2   Pass
%% words={'BUZZ','COZY','DOZE','FUZZ','GAZE','HAZE','JAZZ','LAZY','SIZE','ZERO','ZONE'}; assert(isequal(hangman(words),'Z'));
alphabet = ABCDEFGHIJKLMNOPQRSTUVWXYZ mini = 7 mini = 7 10 mini = 7 10 10 mini = 7 10 10 10 mini = 7 10 10 10 5 mini = 7 10 10 10 5 10 mini = 7 10 10 10 5 10 10 mini = 7 10 10 10 5 10 10 10 mini = 7 10 10 10 5 10 10 10 10 mini = 7 10 10 10 5 10 10 10 10 10 mini = 7 10 10 10 5 10 10 10 10 10 11 mini = 7 10 10 10 5 10 10 10 10 10 11 10 mini = 7 10 10 10 5 10 10 10 10 10 11 10 11 mini = 7 10 10 10 5 10 10 10 10 10 11 10 11 10 mini = 7 10 10 10 5 10 10 10 10 10 11 10 11 10 7 mini = 7 10 10 10 5 10 10 10 10 10 11 10 11 10 7 11 mini = Columns 1 through 16 7 10 10 10 5 10 10 10 10 10 11 10 11 10 7 11 Column 17 11 mini = Columns 1 through 16 7 10 10 10 5 10 10 10 10 10 11 10 11 10 7 11 Columns 17 through 18 11 10 mini = Columns 1 through 16 7 10 10 10 5 10 10 10 10 10 11 10 11 10 7 11 Columns 17 through 19 11 10 10 mini = Columns 1 through 16 7 10 10 10 5 10 10 10 10 10 11 10 11 10 7 11 Columns 17 through 20 11 10 10 11 mini = Columns 1 through 16 7 10 10 10 5 10 10 10 10 10 11 10 11 10 7 11 Columns 17 through 21 11 10 10 11 9 mini = Columns 1 through 16 7 10 10 10 5 10 10 10 10 10 11 10 11 10 7 11 Columns 17 through 22 11 10 10 11 9 11 mini = Columns 1 through 16 7 10 10 10 5 10 10 10 10 10 11 10 11 10 7 11 Columns 17 through 23 11 10 10 11 9 11 11 mini = Columns 1 through 16 7 10 10 10 5 10 10 10 10 10 11 10 11 10 7 11 Columns 17 through 24 11 10 10 11 9 11 11 11 mini = Columns 1 through 16 7 10 10 10 5 10 10 10 10 10 11 10 11 10 7 11 Columns 17 through 25 11 10 10 11 9 11 11 11 9 mini = Columns 1 through 16 7 10 10 10 5 10 10 10 10 10 11 10 11 10 7 11 Columns 17 through 26 11 10 10 11 9 11 11 11 9 0 tf = 0 loc = 26 letter = Z
3   Pass
%% rng default; words=unique(char('A'+randi(26,[100,3])-1),'rows'); assert(isequal(sum(any(words==hangman(cellstr(words)'),2)),max(arrayfun(@(x)sum(any(words==x,2)),'A':'Z'))));
alphabet = ABCDEFGHIJKLMNOPQRSTUVWXYZ mini = 89 mini = 89 92 mini = 89 92 87 mini = 89 92 87 87 mini = 89 92 87 87 85 mini = 89 92 87 87 85 89 mini = 89 92 87 87 85 89 81 mini = 89 92 87 87 85 89 81 92 mini = 89 92 87 87 85 89 81 92 91 mini = 89 92 87 87 85 89 81 92 91 89 mini = 89 92 87 87 85 89 81 92 91 89 91 mini = 89 92 87 87 85 89 81 92 91 89 91 87 mini = 89 92 87 87 85 89 81 92 91 89 91 87 86 mini = 89 92 87 87 85 89 81 92 91 89 91 87 86 88 mini = 89 92 87 87 85 89 81 92 91 89 91 87 86 88 90 mini = 89 92 87 87 85 89 81 92 91 89 91 87 86 88 90 91 mini = Columns 1 through 16 89 92 87 87 85 89 81 92 91 89 91 87 86 88 90 91 Column 17 88 mini = Columns 1 through 16 89 92 87 87 85 89 81 92 91 89 91 87 86 88 90 91 Columns 17 through 18 88 89 mini = Columns 1 through 16 89 92 87 87 85 89 81 92 91 89 91 87 86 88 90 91 Columns 17 through 19 88 89 89 mini = Columns 1 through 16 89 92 87 87 85 89 81 92 91 89 91 87 86 88 90 91 Columns 17 through 20 88 89 89 88 mini = Columns 1 through 16 89 92 87 87 85 89 81 92 91 89 91 87 86 88 90 91 Columns 17 through 21 88 89 89 88 85 mini = Columns 1 through 16 89 92 87 87 85 89 81 92 91 89 91 87 86 88 90 91 Columns 17 through 22 88 89 89 88 85 89 mini = Columns 1 through 16 89 92 87 87 85 89 81 92 91 89 91 87 86 88 90 91 Columns 17 through 23 88 89 89 88 85 89 93 mini = Columns 1 through 16 89 92 87 87 85 89 81 92 91 89 91 87 86 88 90 91 Columns 17 through 24 88 89 89 88 85 89 93 84 mini = Columns 1 through 16 89 92 87 87 85 89 81 92 91 89 91 87 86 88 90 91 Columns 17 through 25 88 89 89 88 85 89 93 84 83 mini = Columns 1 through 16 89 92 87 87 85 89 81 92 91 89 91 87 86 88 90 91 Columns 17 through 26 88 89 89 88 85 89 93 84 83 91 tf = 81 loc = 7 letter = G
4   Pass
%% rng default; words=unique(char('A'+randi(26,[200,4])-1),'rows'); assert(isequal(sum(any(words==hangman(cellstr(words)'),2)),max(arrayfun(@(x)sum(any(words==x,2)),'A':'Z'))));
alphabet = ABCDEFGHIJKLMNOPQRSTUVWXYZ mini = 176 mini = 176 169 mini = 176 169 166 mini = 176 169 166 168 mini = 176 169 166 168 164 mini = 176 169 166 168 164 174 mini = 176 169 166 168 164 174 166 mini = 176 169 166 168 164 174 166 176 mini = 176 169 166 168 164 174 166 176 175 mini = 176 169 166 168 164 174 166 176 175 179 mini = 176 169 166 168 164 174 166 176 175 179 173 mini = 176 169 166 168 164 174 166 176 175 179 173 164 mini = 176 169 166 168 164 174 166 176 175 179 173 164 167 mini = 176 169 166 168 164 174 166 176 175 179 173 164 167 168 mini = 176 169 166 168 164 174 166 176 175 179 173 164 167 168 173 mini = 176 169 166 168 164 174 166 176 175 179 173 164 167 168 173 169 mini = Columns 1 through 16 176 169 166 168 164 174 166 176 175 179 173 164 167 168 173 169 Column 17 168 mini = Columns 1 through 16 176 169 166 168 164 174 166 176 175 179 173 164 167 168 173 169 Columns 17 through 18 168 168 mini = Columns 1 through 16 176 169 166 168 164 174 166 176 175 179 173 164 167 168 173 169 Columns 17 through 19 168 168 169 mini = Columns 1 through 16 176 169 166 168 164 174 166 176 175 179 173 164 167 168 173 169 Columns 17 through 20 168 168 169 168 mini = Columns 1 through 16 176 169 166 168 164 174 166 176 175 179 173 164 167 168 173 169 Columns 17 through 21 168 168 169 168 171 mini = Columns 1 through 16 176 169 166 168 164 174 166 176 175 179 173 164 167 168 173 169 Columns 17 through 22 168 168 169 168 171 169 mini = Columns 1 through 16 176 169 166 168 164 174 166 176 175 179 173 164 167 168 173 169 Columns 17 through 23 168 168 169 168 171 169 178 mini = Columns 1 through 16 176 169 166 168 164 174 166 176 175 179 173 164 167 168 173 169 Columns 17 through 24 168 168 169 168 171 169 178 172 mini = Columns 1 through 16 176 169 166 168 164 174 166 176 175 179 173 164 167 168 173 169 Columns 17 through 25 168 168 169 168 171 169 178 172 170 mini = Columns 1 through 16 176 169 166 168 164 174 166 176 175 179 173 164 167 168 173 169 Columns 17 through 26 168 168 169 168 171 169 178 172 170 176 tf = 164 loc = 5 letter = E
5   Pass
%% rng default; words=unique(char('A'+randi(26,[500,5])-1),'rows'); assert(isequal(sum(any(words==hangman(cellstr(words)'),2)),max(arrayfun(@(x)sum(any(words==x,2)),'A':'Z'))));
alphabet = ABCDEFGHIJKLMNOPQRSTUVWXYZ mini = 425 mini = 425 411 mini = 425 411 403 mini = 425 411 403 406 mini = 425 411 403 406 407 mini = 425 411 403 406 407 416 mini = 425 411 403 406 407 416 408 mini = 425 411 403 406 407 416 408 426 mini = 425 411 403 406 407 416 408 426 415 mini = 425 411 403 406 407 416 408 426 415 420 mini = 425 411 403 406 407 416 408 426 415 420 397 mini = 425 411 403 406 407 416 408 426 415 420 397 396 mini = 425 411 403 406 407 416 408 426 415 420 397 396 434 mini = 425 411 403 406 407 416 408 426 415 420 397 396 434 405 mini = 425 411 403 406 407 416 408 426 415 420 397 396 434 405 403 mini = 425 411 403 406 407 416 408 426 415 420 397 396 434 405 403 403 mini = Columns 1 through 16 425 411 403 406 407 416 408 426 415 420 397 396 434 405 403 403 Column 17 415 mini = Columns 1 through 16 425 411 403 406 407 416 408 426 415 420 397 396 434 405 403 403 Columns 17 through 18 415 413 mini = Columns 1 through 16 425 411 403 406 407 416 408 426 415 420 397 396 434 405 403 403 Columns 17 through 19 415 413 401 mini = Columns 1 through 16 425 411 403 406 407 416 408 426 415 420 397 396 434 405 403 403 Columns 17 through 20 415 413 401 403 mini = Columns 1 through 16 425 411 403 406 407 416 408 426 415 420 397 396 434 405 403 403 Columns 17 through 21 415 413 401 403 414 mini = Columns 1 through 16 425 411 403 406 407 416 408 426 415 420 397 396 434 405 403 403 Columns 17 through 22 415 413 401 403 414 407 mini = Columns 1 through 16 425 411 403 406 407 416 408 426 415 420 397 396 434 405 403 403 Columns 17 through 23 415 413 401 403 414 407 425 mini = Columns 1 through 16 425 411 403 406 407 416 408 426 415 420 397 396 434 405 403 403 Columns 17 through 24 415 413 401 403 414 407 425 411 mini = Columns 1 through 16 425 411 403 406 407 416 408 426 415 420 397 396 434 405 403 403 Columns 17 through 25 415 413 401 403 414 407 425 411 415 mini = Columns 1 through 16 425 411 403 406 407 416 408 426 415 420 397 396 434 405 403 403 Columns 17 through 26 415 413 401 403 414 407 425 411 415 413 tf = 396 loc = 12 letter = L