[I learned about this problem from Greg Nelson, who phrased the problem in terms of a tall building and elevator rides. Here, I instead say a mountain and helicopter rides, which is the way Lyle Ramshaw had heard the problem and which more forcefully emphasizes the price of each ride. As a computer scientist, I like this problem a lot, because of the variety of solutions of different computational complexities.]
You’re an electrician working at a mountain. There are N wires running from one side of the mountain to the other. The problem is that the wires are not labeled, so you just see N wire ends on each side of the mountain. Your job is to match these ends (say, by labeling the two ends of each wire in the same way).
In order to figure out the matching, you can twist together wire ends, thus electrically connecting the wires. You can twist as many wire ends as you want, into as many clusters as you want, at the side of the mountain where you happen to be at the time. You can also untwist the wire ends at the side of the mountain where you’re at. You are equipped with an Ohm meter, which lets you test the connectivity of any pair of wires. (Actually, it’s an abstract Ohm meter, in that it only tells you whether or not two things are connected, not the exact resistance.)
You are not charged [no pun intended] for twisting, untwisting, and using the Ohm meter. You are only charged for each helicopter ride you make from one side of the mountain to the other. What is the best way to match the wires? (Oh, N>2, for there is no solution when N=2.)