A Riddle: How Many Crooked Politicians Are There?

Welcome to The Riddler. Every week, I offer up problems related to the things we hold dear around here: math, logic and probability. There are two types: Riddler Express for those of you who want something bite-sized and Riddler Classic for those of you in the slow-puzzle movement. Submit a correct answer for either,1 and you may get a shoutout in next week’s column. If you need a hint, or have a favorite puzzle collecting dust in your attic, find me on Twitter.

Riddler Express

Last week, Raymond Smullyan, a mathematician and giant in the logic puzzle world, died at age 97. In his honor, here’s a puzzle adapted from his appearance on Johnny Carson’s show in 1982, in the good old days when late-night talk shows featured Riddler-esque puzzles:

In a legislature, there are 100 politicians. Each is either honest or crooked; some of the legislature is honest, and some of it is crooked. However, if you choose any two politicians at random, at least one is crooked. How many honest politicians are there?

Riddler Classic

From Peter Calhoun, a horological pyromaniacal puzzle:

Suppose you have four ropes and a lighter. Each rope burns at a nonconstant rate but takes exactly one hour to burn completely from one end to the other. You can only light the ropes at either of their ends but can decide when to light each end as you see fit. If you’re strategic in how you burn the ropes, how many specific lengths of time can you measure? (For example, if you had one rope, you could measure two lengths of time: one hour, by simply burning the entire rope from one end, and half an hour, by burning the rope from both ends and marking when the flames meet.)

Solution to last week’s Riddler Express

You’re a lifeguard standing on the beach, right on the edge of the water, when you spot someone drowning. The troubled swimmer is 100 meters to your right and 100 meters from the shore. You can run 100 meters in 15 seconds and swim 100 meters in 75 seconds. How fast can you get to the victim? If you take the optimal route, you can get there in about 88.5 seconds.

If you run the 100 meters to the right, and then swim the 100 meters out, you’d get to the swimmer in 90 seconds. But if you start swimming at just the right time, you can get there just a little faster. But how do we figure out when to start swimming? Let’s start with a picture:

The only decision you need to make is s — the point at which you start swimming. Otherwise, you’ll simply run straight to the right or swim directly toward the victim. So the question is: What’s the best s?

If you start swimming at point s, you know you’ll have run s meters. But how far you will swim is less obvious and depends on the triangle created in the diagram above. We can find that swimming distance using that old schoolhouse chestnut, the Pythagorean theorem: \(a^2 + b^2 = c^2\). The two legs of our triangle of interest have lengths 100-s and 100, so the hypotenuse (the distance we’ll swim) has length \(\sqrt{(100-s)^2+100^2}\). Now we have all the pieces to write down an equation for how long it’ll take to get to the swimmer, based on our choice of s. Simply take those distances and multiply them by your relative speeds over sand and through water:

We’re close! Now, we can think back to Calc 101 and take derivatives of that expression to find the optimal s, or we can take a shortcut and plug the equation into a calculator like Wolfram Alpha. We find that we should start swimming after running for about 79.6 meters and that we’ll come to the rescue after about 88.5 seconds!

This solution is closely related to Snell’s law, which describes the angles of light passing through air, water or glass.

Solution to last week’s Riddler Classic

Toddler poker is a game for two players that is won by whoever has the higher number. Each player is dealt a “card,” which is actually a number randomly and uniformly chosen from the interval [0,1]. The game starts with each player anteing $1. Player A can then either “call,” in which case both numbers are shown and the winning player gets the $2 on the table, or “raise,” betting one more dollar. If A raises, B then has the option to either “call” by matching A’s second dollar, after which the higher number wins the $4 on the table, or “fold,” in which case A wins but B is out only his original $1. No other plays are made. What are the optimal strategies in this game?

Most interestingly, according to game theory, some bluffing is optimal for Player A! This puzzle came to us from Laurent Lessard, and he provides an excellent solution on his blog. The derivations are quite involved, so I’ll leave it to Laurent to walk you through the specifics. But here’s some of the intuition.

Player B should only call when her number is high. This makes good sense. Player B has no opportunity to bluff, because the game ends regardless of what she chooses to do, so she plays it straight. Player A, on the other hand, does have that opportunity. He should raise when his number is high — that makes sense — but he should also raise when his number is very low. If he only calls with low numbers, he’ll lose very often. By bluffing with these low numbers, he’ll induce folds from Player B frequently enough to make the move profitable.

Specifically, A should raise when his number is greater than 0.7 or less than 0.1. B should then call when her number is greater than 0.4 and fold otherwise.

The extra credit problem asked you to expand the optimal strategies to the general case in which the raise is worth $k, rather than $2. The basic structure of the optimal strategies remains unchanged, but the optimal thresholds — the boundaries that dictate the decisions between calling and raising (for Player A) or calling and folding (for Player B) — shift as the raise becomes larger.