Counterintuitive problem: People in a room keep giving dollars to random others
This is an irreducible Markov chain (i.e. it's possible to go from any state to any other with positive probability in a certain number of steps) on a finite state space (because money never enters or leaves the system). This means that every state is recurrent, i.e. will happen if you wait long enough.<p>This is the relevant theorem:<p><a href="https://math.stackexchange.com/questions/543051/markov-chain-closed-finite-classes-are-recurrent" rel="nofollow">https://math.stackexchange.com/questions/543051/markov-chain...</a><p>This means you should eventually see each person hoard all of the money in turn. Try it with 5 people and 5 dollars each. Then the system only has 29 choose 25 = 23751 states[1], which should give your computer enough time to hit them all.<p><i>Edit</i>: Here, Python "proof"<p><pre><code>    from random import randint

    numpeople = 5
    initmoney = 5

    ledger = [initmoney]*numpeople

    while True:

        recipients = []
        for i in range(numpeople):
            if ledger[i] == 0:
                recipient = None
            else:
                recipient = randint(0, numpeople-2)
                if recipient >= i:
                    recipient += 1
            recipients.append(recipient)

        for i, recipient in enumerate(recipients):
            if recipient is not None:
                ledger[i] -= 1
                ledger[recipient] += 1

        if max(ledger) == initmoney*numpeople - 1:
            print ledger

</code></pre>
----<p>[1] <a href="https://en.wikipedia.org/wiki/Stars_and_bars_(combinatorics)#Proofs_via_the_method_of_stars_and_bars" rel="nofollow">https://en.wikipedia.org/wiki/Stars_and_bars_(combinatorics)...</a>