Two friends buy a open chain of beads (i.e. the chain is not a closed loop). There are two colors of beads, black and white, and there are an even number of each type. The friends would like to cut the chain so that each of them gets an equal number of white beads and an equal number of black beads. What is the smallest number of cuts that will guarantee this regardless of the configuration of black and white beads in the chain? Please give some indication as to why your answer is correct; don't just give a number.

What if there are more than two friends? (Again assuming that the number of black beads and white beads allows them to be evenly distributed among the friends.)

What if there are more than two colors of beads?

What if there are more than two friends __and__ more than two colors?