Cody

# Problem 1687. Poker Card Deal!

Solution 1519972

Submitted on 7 May 2018 by cokakola
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
people = 5; cardsDelt = 5; isJokerIn = 0; [dealtDeck, deckLeftover] = Poker_Deal(people ,cardsDelt ,isJokerIn) deckCheck = {'2h'; '3h'; '4h'; '5h'; '6h'; '7h'; '8h'; '9h'; '10h'; 'jh'; 'qh'; 'kh'; 'ah'; '2d'; '3d'; '4d'; '5d'; '6d'; '7d'; '8d'; '9d'; '10d'; 'jd'; 'qd'; 'kd'; 'ad'; '2s'; '3s'; '4s'; '5s'; '6s'; '7s'; '8s'; '9s'; '10s'; 'js'; 'qs'; 'ks'; 'as'; '2c'; '3c'; '4c'; '5c'; '6c'; '7c'; '8c'; '9c'; '10c'; 'jc'; 'qc'; 'kc'; 'ac'} h = (sum(sum(ismember(deckCheck,dealtDeck))) == 25) & ~issorted(reshape(dealtDeck,25,1)); g = (sum(ismember(deckCheck,deckLeftover)) == (52-25)) & ~issorted(deckLeftover); y_correct = g&h; assert(isequal(g,h))

1 1 13 0 1 2 12 1 1 3 8 1 1 4 4 0 1 5 1 1 2 1 7 1 2 2 11 0 2 3 13 3 2 4 8 0 2 5 11 2 3 1 5 0 3 2 4 3 3 3 3 1 3 4 5 3 3 5 5 2 4 1 9 1 4 2 1 0 4 3 10 2 4 4 8 3 4 5 2 3 5 1 4 2 5 2 9 0 5 3 10 3 5 4 6 1 5 5 3 2 dealtDeck = 5×5 cell array {'as' } {'kd' } {'9d'} {'5s'} {'2d'} {'8d' } {'qs' } {'ac'} {'9s'} {'qh'} {'6s' } {'5c' } {'4d'} {'6c'} {'6h'} {'10d'} {'2s' } {'jh'} {'9c'} {'3c'} {'5h' } {'10s'} {'jc'} {'7d'} {'4h'} deckLeftover = 1×27 cell array Columns 1 through 18 {'3s'} {'jd'} {'2c'} {'ks'} {'8s'} {'7h'} {'7s'} {'3d'} {'js'} {'2h'} {'5d'} {'qc'} {'4c'} {'6d'} {'9h'} {'qd'} {'4s'} {'ah'} Columns 19 through 27 {'8h'} {'ad'} {'kc'} {'10c'} {'3h'} {'10h'} {'kh'} {'8c'} {'7c'} deckCheck = 52×1 cell array {'2h' } {'3h' } {'4h' } {'5h' } {'6h' } {'7h' } {'8h' } {'9h' } {'10h'} {'jh' } {'qh' } {'kh' } {'ah' } {'2d' } {'3d' } {'4d' } {'5d' } {'6d' } {'7d' } {'8d' } {'9d' } {'10d'} {'jd' } {'qd' } {'kd' } {'ad' } {'2s' } {'3s' } {'4s' } {'5s' } {'6s' } {'7s' } {'8s' } {'9s' } {'10s'} {'js' } {'qs' } {'ks' } {'as' } {'2c' } {'3c' } {'4c' } {'5c' } {'6c' } {'7c' } {'8c' } {'9c' } {'10c'} {'jc' } {'qc' } {'kc' } {'ac' }

2   Pass
people = 3; cardsDelt = 5; isJokerIn = 0; [dealtDeck, deckLeftover] = Poker_Deal(people ,cardsDelt ,isJokerIn) deckCheck = {'2h'; '3h'; '4h'; '5h'; '6h'; '7h'; '8h'; '9h'; '10h'; 'jh'; 'qh'; 'kh'; 'ah'; '2d'; '3d'; '4d'; '5d'; '6d'; '7d'; '8d'; '9d'; '10d'; 'jd'; 'qd'; 'kd'; 'ad'; '2s'; '3s'; '4s'; '5s'; '6s'; '7s'; '8s'; '9s'; '10s'; 'js'; 'qs'; 'ks'; 'as'; '2c'; '3c'; '4c'; '5c'; '6c'; '7c'; '8c'; '9c'; '10c'; 'jc'; 'qc'; 'kc'; 'ac'} h = (sum(sum(ismember(deckCheck,dealtDeck))) == 15) & ~issorted(reshape(dealtDeck,15,1)); g = (sum(ismember(deckCheck,deckLeftover)) == (52-15)) & ~issorted(deckLeftover); y_correct = g&h; assert(isequal(g,h))

1 1 9 0 1 2 13 1 1 3 10 1 1 4 1 3 1 5 6 1 2 1 6 2 2 2 2 0 2 3 3 0 2 4 13 2 2 5 7 0 3 1 6 3 3 2 13 0 3 3 8 2 3 4 10 0 3 5 4 3 dealtDeck = 3×5 cell array {'10s'} {'ad'} {'jd'} {'2c'} {'7d'} {'7h' } {'3s'} {'4s'} {'ah'} {'8s'} {'7c' } {'as'} {'9h'} {'js'} {'5c'} deckLeftover = 1×37 cell array Columns 1 through 18 {'ac'} {'kh'} {'3d'} {'7s'} {'10h'} {'9c'} {'2d'} {'8d'} {'9s'} {'6h'} {'qc'} {'5d'} {'jh'} {'10c'} {'8h'} {'5s'} {'jc'} {'6c'} Columns 19 through 36 {'9d'} {'6d'} {'2h'} {'10d'} {'kc'} {'3h'} {'qd'} {'kd'} {'3c'} {'ks'} {'2s'} {'4d'} {'8c'} {'4c'} {'qh'} {'qs'} {'4h'} {'6s'} Column 37 {'5h'} deckCheck = 52×1 cell array {'2h' } {'3h' } {'4h' } {'5h' } {'6h' } {'7h' } {'8h' } {'9h' } {'10h'} {'jh' } {'qh' } {'kh' } {'ah' } {'2d' } {'3d' } {'4d' } {'5d' } {'6d' } {'7d' } {'8d' } {'9d' } {'10d'} {'jd' } {'qd' } {'kd' } {'ad' } {'2s' } {'3s' } {'4s' } {'5s' } {'6s' } {'7s' } {'8s' } {'9s' } {'10s'} {'js' } {'qs' } {'ks' } {'as' } {'2c' } {'3c' } {'4c' } {'5c' } {'6c' } {'7c' } {'8c' } {'9c' } {'10c'} {'jc' } {'qc' } {'kc' } {'ac' }

3   Pass
people = 4; cardsDelt = 7; isJokerIn = 0; [dealtDeck, deckLeftover] = Poker_Deal(people ,cardsDelt ,isJokerIn) deckCheck = {'2h'; '3h'; '4h'; '5h'; '6h'; '7h'; '8h'; '9h'; '10h'; 'jh'; 'qh'; 'kh'; 'ah'; '2d'; '3d'; '4d'; '5d'; '6d'; '7d'; '8d'; '9d'; '10d'; 'jd'; 'qd'; 'kd'; 'ad'; '2s'; '3s'; '4s'; '5s'; '6s'; '7s'; '8s'; '9s'; '10s'; 'js'; 'qs'; 'ks'; 'as'; '2c'; '3c'; '4c'; '5c'; '6c'; '7c'; '8c'; '9c'; '10c'; 'jc'; 'qc'; 'kc'; 'ac'} h = (sum(sum(ismember(deckCheck,dealtDeck))) == 28) & ~issorted(reshape(dealtDeck,28,1)); g = (sum(ismember(deckCheck,deckLeftover)) == (52-28)) & ~issorted(deckLeftover); y_correct = g&h; assert(isequal(g,h))

1 1 12 3 1 2 4 3 1 3 13 3 1 4 11 3 1 5 12 2 1 6 1 0 1 7 2 3 2 1 13 1 2 2 13 0 2 3 10 3 2 4 3 2 2 5 12 0 2 6 1 3 2 7 6 1 3 1 4 2 3 2 9 2 3 3 13 2 3 4 10 2 3 5 7 2 3 6 11 1 3 7 5 1 4 1 6 0 4 2 11 0 4 3 10 1 4 4 1 1 4 5 8 3 4 6 9 1 4 7 2 0 dealtDeck = 4×7 cell array {'kc'} {'5c' } {'ac'} {'qc'} {'kh'} {'2s' } {'3c'} {'ad'} {'as' } {'jc'} {'4h'} {'ks'} {'2c' } {'7d'} {'5h'} {'10h'} {'ah'} {'jh'} {'8h'} {'qd' } {'6d'} {'7s'} {'qs' } {'jd'} {'2d'} {'9c'} {'10d'} {'3s'} deckLeftover = 1×24 cell array Columns 1 through 18 {'8c'} {'8s'} {'9h'} {'6s'} {'4d'} {'js'} {'7c'} {'9s'} {'7h'} {'3d'} {'kd'} {'6c'} {'4s'} {'10c'} {'6h'} {'5d'} {'9d'} {'2h'} Columns 19 through 24 {'4c'} {'3h'} {'8d'} {'qh'} {'5s'} {'10s'} deckCheck = 52×1 cell array {'2h' } {'3h' } {'4h' } {'5h' } {'6h' } {'7h' } {'8h' } {'9h' } {'10h'} {'jh' } {'qh' } {'kh' } {'ah' } {'2d' } {'3d' } {'4d' } {'5d' } {'6d' } {'7d' } {'8d' } {'9d' } {'10d'} {'jd' } {'qd' } {'kd' } {'ad' } {'2s' } {'3s' } {'4s' } {'5s' } {'6s' } {'7s' } {'8s' } {'9s' } {'10s'} {'js' } {'qs' } {'ks' } {'as' } {'2c' } {'3c' } {'4c' } {'5c' } {'6c' } {'7c' } {'8c' } {'9c' } {'10c'} {'jc' } {'qc' } {'kc' } {'ac' }

4   Pass
people = 5; cardsDelt = 6; isJokerIn = 1; [dealtDeck, deckLeftover] = Poker_Deal(people ,cardsDelt ,isJokerIn) deckCheck = {'2h'; '3h'; '4h'; '5h'; '6h'; '7h'; '8h'; '9h'; '10h'; 'jh'; 'qh'; 'kh'; 'ah'; '2d'; '3d'; '4d'; '5d'; '6d'; '7d'; '8d'; '9d'; '10d'; 'jd'; 'qd'; 'kd'; 'ad'; '2s'; '3s'; '4s'; '5s'; '6s'; '7s'; '8s'; '9s'; '10s'; 'js'; 'qs'; 'ks'; 'as'; '2c'; '3c'; '4c'; '5c'; '6c'; '7c'; '8c'; '9c'; '10c'; 'jc'; 'qc'; 'kc'; 'ac'; 'J'; 'J'} h = (sum(sum(ismember(deckCheck,dealtDeck))) == 30) & ~issorted(reshape(dealtDeck,30,1)); g = (sum(ismember(deckCheck,deckLeftover)) == (54-30)) & ~issorted(deckLeftover); y_correct = g&h; assert(isequal(g,h))

1 1 12 2 1 3 3 3 1 4 5 0 1 5 12 3 1 6 6 1 2 1 6 3 2 2 9 2 2 3 7 3 2 4 5 2 2 5 5 3 2 6 6 0 3 1 6 2 3 2 3 1 3 3 1 0 3 4 3 0 3 5 8 2 3 6 9 1 4 1 11 0 4 2 9 3 4 3 8 1 4 4 4 3 4 6 10 2 5 1 10 1 5 2 4 2 5 3 8 0 5 4 13 3 5 5 9 0 5 6 1 2 dealtDeck = 5×6 cell array {'kh'} {'J' } {'4c'} {'6s'} {'kc' } {'7d' } {'7c'} {'10h'} {'8c'} {'6h'} {'6c' } {'7s' } {'7h'} {'4d' } {'2s'} {'4s'} {'9h' } {'10d'} {'qs'} {'10c'} {'9d'} {'5c'} {'J' } {'jh' } {'jd'} {'5h' } {'9s'} {'ac'} {'10s'} {'2h' } deckLeftover = 1×24 cell array Columns 1 through 18 {'3s'} {'3h'} {'2d'} {'jc'} {'8h'} {'3c'} {'ah'} {'4h'} {'qh'} {'6d'} {'qc'} {'8d'} {'qd'} {'8s'} {'as'} {'kd'} {'5s'} {'3d'} Columns 19 through 24 {'ad'} {'ks'} {'9c'} {'5d'} {'js'} {'2c'} deckCheck = 54×1 cell array {'2h' } {'3h' } {'4h' } {'5h' } {'6h' } {'7h' } {'8h' } {'9h' } {'10h'} {'jh' } {'qh' } {'kh' } {'ah' } {'2d' } {'3d' } {'4d' } {'5d' } {'6d' } {'7d' } {'8d' } {'9d' } {'10d'} {'jd' } {'qd' } {'kd' } {'ad' } {'2s' } {'3s' } {'4s' } {'5s' } {'6s' } {'7s' } {'8s' } {'9s' } {'10s'} {'js' } {'qs' } {'ks' } {'as' } {'2c' } {'3c' } {'4c' } {'5c' } {'6c' } {'7c' } {'8c' } {'9c' } {'10c'} {'jc' } {'qc' } {'kc' } {'ac' } {'J' } {'J' }

5   Pass
people = 3; cardsDelt = 4; isJokerIn = 1; [dealtDeck, deckLeftover] = Poker_Deal(people ,cardsDelt ,isJokerIn) deckCheck = {'2h'; '3h'; '4h'; '5h'; '6h'; '7h'; '8h'; '9h'; '10h'; 'jh'; 'qh'; 'kh'; 'ah'; '2d'; '3d'; '4d'; '5d'; '6d'; '7d'; '8d'; '9d'; '10d'; 'jd'; 'qd'; 'kd'; 'ad'; '2s'; '3s'; '4s'; '5s'; '6s'; '7s'; '8s'; '9s'; '10s'; 'js'; 'qs'; 'ks'; 'as'; '2c'; '3c'; '4c'; '5c'; '6c'; '7c'; '8c'; '9c'; '10c'; 'jc'; 'qc'; 'kc'; 'ac'; 'J'; 'J'} h = (sum(sum(ismember(deckCheck,dealtDeck))) == 12) & ~issorted(reshape(dealtDeck,12,1)); g = (sum(ismember(deckCheck,deckLeftover)) == (54-12)) & ~issorted(deckLeftover); y_correct = g&h; assert(isequal(g,h))

1 1 3 2 1 2 11 3 1 3 4 0 1 4 7 0 2 1 5 1 2 2 5 3 2 3 2 3 2 4 4 2 3 1 8 3 3 2 7 1 3 3 11 0 3 4 1 0 dealtDeck = 3×4 cell array {'4h'} {'qc'} {'5s'} {'8s'} {'6d'} {'6c'} {'3c'} {'5h'} {'9c'} {'8d'} {'qs'} {'2s'} deckLeftover = 1×42 cell array Columns 1 through 18 {'9h'} {'jc'} {'jh'} {'10d'} {'5d'} {'8c'} {'6h'} {'5c'} {'3s'} {'2d'} {'7d'} {'4d'} {'4s'} {'6s'} {'9d'} {'ah'} {'ac'} {'2c'} Columns 19 through 36 {'4c'} {'7c'} {'8h'} {'J'} {'7s'} {'10s'} {'kc'} {'qh'} {'kd'} {'qd'} {'J'} {'3d'} {'2h'} {'ad'} {'9s'} {'jd'} {'3h'} {'js'} Columns 37 through 42 {'as'} {'10c'} {'ks'} {'kh'} {'10h'} {'7h'} deckCheck = 54×1 cell array {'2h' } {'3h' } {'4h' } {'5h' } {'6h' } {'7h' } {'8h' } {'9h' } {'10h'} {'jh' } {'qh' } {'kh' } {'ah' } {'2d' } {'3d' } {'4d' } {'5d' } {'6d' } {'7d' } {'8d' } {'9d' } {'10d'} {'jd' } {'qd' } {'kd' } {'ad' } {'2s' } {'3s' } {'4s' } {'5s' } {'6s' } {'7s' } {'8s' } {'9s' } {'10s'} {'js' } {'qs' } {'ks' } {'as' } {'2c' } {'3c' } {'4c' } {'5c' } {'6c' } {'7c' } {'8c' } {'9c' } {'10c'} {'jc' } {'qc' } {'kc' } {'ac' } {'J' } {'J' }

6   Pass
people = 3; cardsDelt = 3; isJokerIn = 1; [dealtDeck, deckLeftover] = Poker_Deal(people ,cardsDelt ,isJokerIn) deckCheck = {'2h'; '3h'; '4h'; '5h'; '6h'; '7h'; '8h'; '9h'; '10h'; 'jh'; 'qh'; 'kh'; 'ah'; '2d'; '3d'; '4d'; '5d'; '6d'; '7d'; '8d'; '9d'; '10d'; 'jd'; 'qd'; 'kd'; 'ad'; '2s'; '3s'; '4s'; '5s'; '6s'; '7s'; '8s'; '9s'; '10s'; 'js'; 'qs'; 'ks'; 'as'; '2c'; '3c'; '4c'; '5c'; '6c'; '7c'; '8c'; '9c'; '10c'; 'jc'; 'qc'; 'kc'; 'ac'; 'J'; 'J'} h = (sum(sum(ismember(deckCheck,dealtDeck))) == 9) & ~issorted(reshape(dealtDeck,9,1)); g = (sum(ismember(deckCheck,deckLeftover)) == (54-9)) & ~issorted(deckLeftover); y_correct = g&h; assert(isequal(g,h))

1 1 11 3 1 2 9 0 1 3 6 3 2 1 11 0 2 2 2 0 2 3 2 3 3 1 8 0 3 2 9 3 3 3 10 3 dealtDeck = 3×3 cell array {'qc'} {'10s'} {'7c'} {'qs'} {'3s' } {'3c'} {'9s'} {'10c'} {'jc'} deckLeftover = 1×45 cell array Columns 1 through 18 {'js'} {'kh'} {'3h'} {'4c'} {'7s'} {'qd'} {'8d'} {'5h'} {'qh'} {'5d'} {'9d'} {'kd'} {'ac'} {'2d'} {'10d'} {'J'} {'2c'} {'ad'} Columns 19 through 36 {'7d'} {'4s'} {'10h'} {'9c'} {'6c'} {'3d'} {'4d'} {'as'} {'8h'} {'6h'} {'2s'} {'8s'} {'5s'} {'ah'} {'8c'} {'jd'} {'9h'} {'ks'} Columns 37 through 45 {'5c'} {'jh'} {'6d'} {'kc'} {'7h'} {'J'} {'6s'} {'4h'} {'2h'} deckCheck = 54×1 cell array {'2h' } {'3h' } {'4h' } {'5h' } {'6h' } {'7h' } {'8h' } {'9h' } {'10h'} {'jh' } {'qh' } {'kh' } {'ah' } {'2d' } {'3d' } {'4d' } {'5d' } {'6d' } {'7d' } {'8d' } {'9d' } {'10d'} {'jd' } {'qd' } {'kd' } {'ad' } {'2s' } {'3s' } {'4s' } {'5s' } {'6s' } {'7s' } {'8s' } {'9s' } {'10s'} {'js' } {'qs' } {'ks' } {'as' } {'2c' } {'3c' } {'4c' } {'5c' } {'6c' } {'7c' } {'8c' } {'9c' } {'10c'} {'jc' } {'qc' } {'kc' } {'ac' } {'J' } {'J' }

### Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!