Given N distinct card types, how many random cards do you need do collect before you have (at least) one of each type? This program simulates this random process.
Problem Statement
Five silent philosophers sit at a table around a bowl of spaghetti. A fork is placed between each pair of adjacent philosophers.
Each philosopher must alternately think and eat.