Combinatorial Probability Another exercise from Saeed Ghahramani's Fundamentals of Probability, paraphrased below:

Consider a train with $n$ cars and $m > n$ passengers. Suppose passengers board cars randomly. What is the probability that at least one person is in each car?

At first I thought the problem could be approached with a stars and bars method. Let $X$ be the event of every car having at least one person aboard.
$$P(X) = \dfrac{\binom{m - 1}{n - 1}}{\binom{n + m - 1}{n}}$$
I am thinking of the cars as integers whose sum is $m$; the numerator counts the number of ways they could sum to $m$ and all be positive, and the denominator counts the number of ways they could sum to $m$ and all be non-negative.
However, Saeed gives a much different answer:
$$P(X) = \dfrac{\sum_{i=1}^n (-1)^i \binom{n}{i} (n-i)^m}{n^m}$$
WolframAlpha simplified this to
$$\dfrac{n! \mathcal{S}_m^{(n)}}{n^m}$$
where $\mathcal{S}_m^{(n)}$ is the "Stirling number of the second kind". I had not heard of these but seeing their definition as number of ways to partition a set of $n$ objects into $k$ non-empty subsets makes clear their appearance. 
A few questions: 
What is wrong with my approach? What am I actually counting? Can you explain the solution given by Saeed?
 A: First, and most important, the fact that the "Stars and Bars" method is not right. We need to construct a mathematical model of the situation. We will assume that the passengers are lined up ready to board. Each passenger rolls a "fair" $n$-sided die to decide on the car she will get into. The rolls are independent.
Suppose that there are $60$ passengers, and, to keep things simple, $3$ cars. The distribution $(60,0,0)$ is far less likely than, for example, the distribution $(22,18,20)$. So treating the $\binom{n+m-1}{n}$  "Stars and Bars" ways of distributing people among cars as equally likely will give the wrong answer. Whenever we divide the "number of favourables" by the "total number," we have to make sure that the possibilities counted by "total number" are all equally likely.

Now we begin to solve the problem, using Inclusion/Exclusion. The choice of cars by the passengers is a function from the set of passengers to the set of cars. Under our model, each of the $n^m$ functions from the set of passengers to the set of cars is equally likely.
Now we count how many of these functions are onto. From the $n^m$ functions, we must subtract the functions that "miss" at least one car. There are $(n-1)^m$ functions that miss Car $1$, and the same for missing Car $2$, and so on. That gives as our first estimate of the number of "good" functions the expression
$$n^m -\binom{n-1}{1}(n-1)^m.$$
But we have subtracted too much. For we have subtracted one too many times the functions (choices) that miss both Car $1$ and Car $2$, or more generally the functions that miss Car $i$ and Car $j$. There are $(n-2)^m$ functions that miss Cars $i$ and $j$, and $\binom{n}{2}$ choices for the two cars missed. So we must add back $\binom{n}{2}(n-2)^m$. Our new estimate is 
$$n^m -\binom{n-1}{1}(n-1)^m+\binom{n}{2}(n-2)^m.$$
But we have added back too much, for we have added back once too many times the functions that miss Cars $i$, $j$, and $k$, where these indices are distinct. Continue!
