NOTE: use Perl; is on undef hiatus. You can read content, but you can't post it. More info will be forthcoming forthcomingly.

All the Perl that's Practical to Extract and Report

scrottie (4167)

scrottie
scott@slowass.net
http://slowass.net/

My email address is scott@slowass.net. Spam me harder! *moan*

Journal of scrottie (4167)

Monday February 16, 2009
11:54 PM

Math challenge... aka, do my work for me

[ #38497 ]

The Wikipedia Poker page has numbers on the various standard poker hands, but I've been tasked with scoring odd ball hands and hands with wild cards, and furthermore, with validating my scoring logic. I have test runs, representing all 52-choose-5 [footnote 1] possible hands run through the hand recognition logic (wild cards are 2s).

I was able to predict how many hands would score as most things but the wild card straight flush has me stumped. Here's what I think the number should be and why. Tell me why I'm wrong.

I'm doing two numbers and adding them together. Hands with a logical high card (which might be a wildcard) of A K Q J 10 9 8 or 7 don't use a 2 as a 2 so they have potentially all four wild cards available (but in reality, four wilds is another hand that takes priority, so we have to subtract that out later). That's 8 possible logical high card values, times 4 suits. Then there's the exact mixture of actual non-wild cards and wild cards. The five cards composing that whatever-high straight flush can be any mixture of the non-wild normal values and the four wild cards. That's 9 cards those 5 cards are chosen from, or 9-choose-5. So 8 * 4 * 9-choose-5 which is 4032.

Then the same thing over again, but for 6 and 5 high hands, where one of the wild cards has to stand in for the actual 2: 2 high card values, 4 suits for whichever of the cards aren't wild, then a mixture of five non-wild cards and the three remaining wilds, or 8-choose-5, which is 448.

Add those for 4480. Subtract out 48+4+480 for the hands four 2s, royal flush, and wild royal flush. And it's still way off what the actual Perl scoring logic came up with: 2,068.

So, what did I do wrong, and how do I fix it?

-scott

Footnote 1:

See http://en.wikipedia.org/wiki/Binomial_coefficient for the 52-choose-5 thing. It's normally written as one number over another both surrounded by (). It's the nCr button on your calculator. For example, 52-choose-5 is 2,598,960.

The Fine Print: The following comments are owned by whoever posted them. We are not responsible for them in any way.

Full
Abbreviated
Hidden
• Duplicates...(Score:1)

Alright, I see a problem. Duplicates. Eg,

K 2 2 2 2 and 2 K 2 2 2 are both the same hand, but the above considers one king-high and the other ace-high. (2s are wild.)

Not sure how to represent the problem now.

-scott

• Re:(Score:2)

When wild cards are used in poker doesn't five of a kind become the highest hand? At least that's what I vaguely recall from Hoyle.

A brief skimming of wikipedia and the wikibooks for poker doesn't show that but then again I would think the odds of 5 of a kind shouldn't be much different than four of a kind except that it's a specific 4 cards that are needed.

Not sure how it really affects your calculations though.

• Re:(Score:1)

Well, this isn't real poker, but instead video poker, where the rules are made up and people like it that way. But five of a kind is the highest paying hand in one of these. The other, five 3-5's, five 6-k, and five aces are all separate hands, and flush comes before four 2s (four wilds). So the number of card combinations that have a chance to match as a hand does vary by game. Simply subtracting out things that overlap, like subtracting out non-royal flushes and four 2s seems to work, at least for the

• Re:(Score:1)

Here is my solution to the problem.

There are 40 hands that you are trying to emulate. All of the straight flushes for 4 suits from ten low down to ace low. To avoid duplicates I will only count ways of representing the best possible hand. That means we can immediately ignore the 4 hands with a low card of 2 because the wild card can represent a 7 instead for a better hand. Let's segment possibilities by how many wild cards there are, whether you are representing one of the 4 royal flushes, the 28 straigh

• Re:(Score:1)

*sigh*. Full houses are easy. You can't have any wild cards because if you did you'd go for 4 of a kind instead. So you have 12 ways to pick the suit you're going to have 3 of a kind in, 4 choices of the cards in that kind, 11 ways to pick the one you have a pair in, and 6 choices for what the pair is. For 9504 possible full houses.

Much harder is 3 of a kind.

• Re:(Score:2)

A full house with a wild card can happen. Two pair plus a wild card gives a full house. (Terminology nit: the three of a kind does not occur in a suit, but at a rank. 3 hearts and 2 spades is not a full house. :-)

• Re:(Score:1)

I noticed that then decided not to reply to myself again just to point that out.

• Re:(Score:1)

I skimmed this to see that you came up with basically the same final result as me and then hurriedly moved on to other things, and then got stuck again. I'm still waiting for word on whether something without a big fat E's and ()'s is acceptable.

There's two things here... I mentioned this briefly before... but again...

1. How many combinations of the 52 cards are recgognized as that hand by itself

2. How many combinations of the 52 cards are recognized as that hand when other overlapping hands are tested fir