Deck of cards: Odds of being dealt 3 of a suit?

I'm trying to figure out an algorithm to calculate the odds of being dealt 3 of a particular suit in a multi deck situation.

Assume we have 3 decks [156 cards] with 39 of each suit. A player gets dealt 3 random cards. How do I calculate the odds of all three of these being the same suit? What if 30 cards are missing, but we know what suits the 30 cards [ex: 10 clubs, 4 hearts 9 spades 7 diamonds] are? How would you adjust said algorithm to compensate?

Any help would be greatly appreciated.
Ok, here goes... sorry for the annotation, if it is kind of vague.

Assume you want to take k items out of n items, without caring about the order. Then the possible ways to do this are, according to probability theory, n!/(k!*(n-k)!).

So, let us assume you need to be dealt specifically 3 spades out of 156 cards. Since there are 39 spades in total, there are 39!/(3!*36!)=9139 ways to do this. Note that I used the number of spades, not total number of cards, as n. Now, the sample space (the possible ways to pull any 3 cards from a pool of 156 cards) is 156!/(3!*153!)=620620. Therefore, the probability to be dealt 3 spades is: P("3 spades")= 9139/620620 = 0.014725597, which is, by the way, quite low.

However, we do not specifically need spades, but any 3 cards that are the same suit. Since the possibilities of being dealt 3 spades, or 3 diamonds, or 3 clubs, or 3 hearts are all independent, we can simply add them:

P("3 of same suit")=P("3 spades")+P("3 diamonds")+P("3 clubs")+P("hearts")=4*P("3 spades")=0.058902388, because all suits have the same probability to be dealt.

Now, for the second part, things get a little more interesting, but still easy to calculate.
Instead of using 39!/(3!*36!) and 156!/(3!*153!), use the numbers you define. In your example, where 30 cards are missing, of which 9 are spades, the probability to be dealt 3 spades is: (30!/(3!*27!))/(126!/(3!*123!)). Note that both the total nmber of spades and the total number of cards has to be modified.

You can calculate the probabilities for the rest of the suits in the same way. I hope this helps :)