• C++ Programming for Financial Engineering
    Highly recommended by thousands of MFE students. Covers essential C++ topics with applications to financial engineering. Learn more Join!
    Python for Finance with Intro to Data Science
    Gain practical understanding of Python to read, understand, and write professional Python code for your first day on the job. Learn more Join!
    An Intuition-Based Options Primer for FE
    Ideal for entry level positions interviews and graduate studies, specializing in options trading arbitrage and options valuation models. Learn more Join!

Problem on the job - bingo game

Hi, I am a math developer for a gaming technology company, and need the assistance of a math/computer science guru.

We have a standard bingo card, with five rows, five columns, and a free space in the center. Column 1 contains 5 integers chosen at random from the set 1 thru 15. Column 2 ... 16-30. Column 3 contains 4 integers ... 31 thru 45. Column 4 contains 5 integers ... 46 thru 60. Column 5 ... 61 thru 75. This game is a slot machine version of bingo, where only one bingo card can used per game, and every card eventually achieves a bingo.

The Draw # is defined as the number of balls drawn when the player FIRST arrives at bingo. For instance if a player hits bingo after 4 numbers have been called, then the Draw # is 4.

If a number is called such that the player has this number on their card, then we call this a daub. Important note: A player can have only so many daubs before a bingo is reached.

The Pay Group # is defined to be the ones digit of the integer that results when the four "corner" numbers are summed together. For instance, if the four corner numbers are 6,12, 68, 71, then the pay group is 7. Important note: Column 1 can only contain integers contained in the set 1 thru 15, Column 5 ... 61 thru 75.

The pay table used to calculate winnings, if any, is based on three factors. Factor #1) The Draw #, Factor #2) The number of daubs, Factor #3) The Pay Group #. For instance if the Draw # is 9, number of daubs is 4, and the paygroup is 7, then the player receives a 2 to 1 return on their bet. Important Note- The paytable details are not important to this problem, the 3 factors used in determining pay are important.

Heres the problem: I need to calculate the probability of the occurence of each winning hand. The probabilites of the losing hands are not as important. Now, which events are winners has already been determined, and I can supply the list of winning events, if necessary. For instance, I need to calculate the probabilities of the events,

5 draws, 4 daubs, Paygroup: 0
7 draws, 6 daubs, Paygroup: 0
11 draws, 9 daubs, Paygroup: 0

Any ideas on how to do this?
Well this is pretty convoluted, and I'm not sure what you're looking for. Can you be more precise?

Also, i'm not familiar with Bingo. How does one get a bingo? And presumably, if the number of daubs can be bigger than 1, numbers may repeat within a given column?
I play a variation of this bingo game but I think OP refers to this card. Numbers can't repeat within a column. You get bingo when you can fill all numbers on any given row.

Important note: A player can have only so many daubs before a bingo is reached.

what does that mean exactly?
what does that mean exactly?

Because you need 5 in a row to hit bingo, there are only so many daubs you can have on a card before a bingo is reached. (I think 19 is the limit, 19 + 1 if you include free space) So once you get that 20th daub, you've hit a bingo somewhere on your card.