Cody

# Problem 1687. Poker Card Deal!

Solution 1626379

Submitted on 13 Sep 2018 by Jens Kjærgaard Boldsen
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))

dealtDeck = 5×5 cell array {'10h'} {'5s'} {'4d'} {'6c'} {'7c'} {'4c' } {'ks'} {'8h'} {'ah'} {'kc'} {'10s'} {'6h'} {'8d'} {'ad'} {'6d'} {'9s' } {'8s'} {'2c'} {'9h'} {'6s'} {'kh' } {'2d'} {'4h'} {'7s'} {'kd'} deckLeftover = 1×27 cell array Columns 1 through 18 {'3d'} {'5d'} {'qs'} {'qh'} {'3h'} {'3c'} {'4s'} {'qc'} {'as'} {'7h'} {'9c'} {'10c'} {'jc'} {'3s'} {'9d'} {'js'} {'7d'} {'jh'} Columns 19 through 27 {'5c'} {'2s'} {'jd'} {'2h'} {'5h'} {'8c'} {'ac'} {'10d'} {'qd'} 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))

dealtDeck = 3×5 cell array {'jd'} {'6s'} {'2c'} {'7d'} {'7s'} {'4c'} {'9h'} {'9s'} {'3h'} {'8d'} {'5s'} {'ks'} {'8s'} {'jh'} {'qc'} deckLeftover = 1×37 cell array Columns 1 through 18 {'4d'} {'6h'} {'7h'} {'kc'} {'2d'} {'jc'} {'8h'} {'3d'} {'2h'} {'ah'} {'5d'} {'9c'} {'js'} {'qd'} {'7c'} {'as'} {'8c'} {'9d'} Columns 19 through 35 {'5c'} {'10d'} {'6c'} {'qs'} {'ad'} {'ac'} {'2s'} {'10s'} {'4h'} {'3c'} {'5h'} {'qh'} {'10h'} {'kh'} {'6d'} {'3s'} {'kd'} Columns 36 through 37 {'10c'} {'4s'} 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))

dealtDeck = 4×7 cell array {'5c' } {'6h'} {'jc'} {'6d'} {'5s'} {'8h'} {'4h'} {'10h'} {'jh'} {'kd'} {'7d'} {'7s'} {'8s'} {'jd'} {'3s' } {'2c'} {'4d'} {'3d'} {'8c'} {'ah'} {'3h'} {'2h' } {'qs'} {'qh'} {'9d'} {'7h'} {'js'} {'8d'} deckLeftover = 1×24 cell array Columns 1 through 17 {'6c'} {'10s'} {'4s'} {'2d'} {'9c'} {'ad'} {'qc'} {'10c'} {'9s'} {'4c'} {'5d'} {'qd'} {'6s'} {'3c'} {'kh'} {'10d'} {'kc'} Columns 18 through 24 {'ac'} {'2s'} {'9h'} {'as'} {'7c'} {'ks'} {'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' }

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))

dealtDeck = 5×6 cell array {'qs'} {'4d'} {'6s'} {'kh'} {'qd' } {'5h' } {'2c'} {'jd'} {'kd'} {'3d'} {'5c' } {'8s' } {'3c'} {'3s'} {'5s'} {'ah'} {'9d' } {'2s' } {'8d'} {'2d'} {'5d'} {'qh'} {'10h'} {'ac' } {'jc'} {'jh'} {'4h'} {'7s'} {'7d' } {'10s'} deckLeftover = 1×24 cell array Columns 1 through 18 {'as'} {'qc'} {'9s'} {'10d'} {'7c'} {'ks'} {'6c'} {'kc'} {'6d'} {'9h'} {'4s'} {'4c'} {'10c'} {'2h'} {'3h'} {'9c'} {'8c'} {'J'} Columns 19 through 24 {'ad'} {'js'} {'J'} {'8h'} {'6h'} {'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' }

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))

dealtDeck = 3×4 cell array {'kh'} {'8d'} {'ah'} {'7d'} {'6d'} {'5s'} {'2s'} {'8s'} {'J' } {'kd'} {'jh'} {'3d'} deckLeftover = 1×42 cell array Columns 1 through 18 {'9s'} {'ad'} {'8c'} {'2h'} {'ac'} {'9h'} {'9c'} {'js'} {'6c'} {'4c'} {'kc'} {'5c'} {'4d'} {'6s'} {'10s'} {'J'} {'10h'} {'10c'} Columns 19 through 36 {'7s'} {'as'} {'jc'} {'qh'} {'9d'} {'2c'} {'qc'} {'qd'} {'4s'} {'10d'} {'7h'} {'qs'} {'4h'} {'3c'} {'7c'} {'3h'} {'6h'} {'jd'} Columns 37 through 42 {'ks'} {'5d'} {'3s'} {'8h'} {'2d'} {'5h'} 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))

dealtDeck = 3×3 cell array {'8h'} {'jd'} {'9s'} {'4s'} {'7h'} {'qd'} {'3h'} {'qs'} {'qh'} deckLeftover = 1×45 cell array Columns 1 through 17 {'5d'} {'6h'} {'2s'} {'10d'} {'2h'} {'7c'} {'6c'} {'10c'} {'10h'} {'2d'} {'3d'} {'js'} {'8c'} {'ah'} {'ad'} {'kh'} {'kc'} Columns 18 through 35 {'9h'} {'3s'} {'4d'} {'jc'} {'5h'} {'ks'} {'4c'} {'kd'} {'6s'} {'5s'} {'6d'} {'9d'} {'4h'} {'2c'} {'7d'} {'J'} {'jh'} {'9c'} Columns 36 through 45 {'7s'} {'qc'} {'5c'} {'8s'} {'ac'} {'3c'} {'as'} {'8d'} {'J'} {'10s'} 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' }