Will Riddler Nation Win Gold In Archery?

A FiveThirtyEight Riddler puzzle.

July 30, 2021

Riddler Express

Riddler Nation is competing against Conundrum Country at an Olympic archery event. Each team fires three arrows toward a circular target \(70\) meters away. Hitting the bull’s-eye earns a team \(10\) points, while regions successively farther away from the bull’s-eye are worth fewer and fewer points.

Whichever team has more points after three rounds wins. However, if the teams are tied after each team has taken three shots, both sides will fire another three arrows. (If they remain tied, they will continue firing three arrows each until the tie is broken.)

For every shot, each archer of Riddler Nation has a one-third chance of hitting the bull’s-eye (i.e., earning \(10\) points), a one-third chance of earning \(9\) points and a one-third chance of earning \(5\) points.

Meanwhile, each archer of Conundrum Country earns \(8\) points with every arrow.

Which team is favored to win?

Extra credit: What is the probability that the team you identified as the favorite will win?


Let \(p_w\) be the probability of Riddler Nation winning. Riddler Nation either wins the first time with a probability of \(p_{wf}\) or Riddler Nation draws with a probability of \(p_d\) and then wins with a probability \(p_w\). Therefore we have,

\[ \begin{aligned} p_w &= p_{wf} + p_d \cdot p_w \\\\ \implies p_w &= \frac{p_{wf}}{1 - p_d} \end{aligned} \]

Calculating probabilities

There are a couple of ways by which \(p_{wf}\) and \(p_d\) can be calculated.

One approach is to use brute-force enumeration of all the \(3^3\) \(3\)-tuples of the points earned in each of the \(3\) shots and count the number of tuples whose sum is greater or equal to \(24\). The Python code for counting the tuples is given below:

from itertools import product
sum([1 for p in product(*[[10,9,5]]*3) if sum(p) > 24])

The other approach is to use \(\textbf{generating functions}\) i.e the coefficient of \(x^{24}\) in \((x^{10} + x^9 + x^5)^3\) gives the count of the number of cases where the sum of the scores of the three shots is \(24\).

Computational Solution

From the simulation below, we see that the \(\textbf{Riddler Nation}\) is favoured to win and the probability of win is \(\approx \textbf{0.524}\).

from random import random

def shot_pts_riddler():
    p = random()
    if p < 0.33333333: 
        return 10
    elif p > 0.33333333 and p < 0.66666666:
        return 9
        return 5

def shot_pts_conundrum():
    return 8

def prob_win_riddler(runs=1000000):
    total_wins = 0
    for _ in range(runs):
        pts_riddler, pts_conundrum  = 0, 0
        while pts_riddler == pts_conundrum:
            pts_riddler = sum([shot_pts_riddler() for _ in range(3)])
            pts_conundrum = sum([shot_pts_conundrum() for _ in range(3)])
        if pts_riddler > pts_conundrum:
                total_wins += 1
    return total_wins/runs


Riddler Classic

Suppose you have a chain with infinitely many flat (i.e., one-dimensional) links. The first link has length \(1\), and the length of each successive link is a fraction \(f\) of the previous link’s length. As you might expect, \(f\) is less than \(1\). You place the chain flat on a table and some ink at the very end of the chain (i.e., the end with the infinitesimal links).

Initially, the chain forms a straight line segment, and the longest link is fixed in place. From there, the links are constrained to move in a very specific way: The angle between each chain and the next, smaller link is always the same throughout the chain. For example, if the \(Nth\) link and the \(N+1st\) link form a \(40\) degree clockwise angle, then so do the \(N+1st\) link and the \(N+2nd\) link.

After you move the chain around as much as you can, what shape is drawn by the ink that was at the tail end of the chain?


The lengths of the links in the chain for a geometric progression \(1, f, f^2,\dots\).

Using the properties of \(\textbf{complex numbers}\), the position \(p_i\) for \(i \geq 2\) of the end point of each link in the chain can be represented as a complex function of \(\theta\) (the angle between each chain link measured anticlockwise). We have,

\[ \begin{aligned} p_1 &= 1 \\\\ p_2(\theta) &= 1 + fe^{i\theta} \\\\ \vdots\\\\ p_n(\theta) &= 1 + fe^{i \theta} + \dots + f^{n-1}e^{(n-1)i\theta} = \sum_{k=0}^{n-1} f^k e^{i k \theta}\\\\ p_{\infty}(\theta) &= \frac{1}{1 - fe^{i\theta}} = \frac{1}{1-f\cos\theta - if\sin\theta} \end{aligned} \]

If \(x\) and \(y\) are the coordinates of the end point of the last link in the chain, we have

\[ \begin{aligned} x = \frac{1 - f\cos\theta}{1+ f^2 - 2f\cos\theta} \\\\ y = \frac{f\sin\theta}{1+ f^2 - 2f\cos\theta} \end{aligned} \]

Eliminating \(\theta\) from the above using brute force, we get

\[ \left(x - \frac{1}{1-f^2}\right)^2 + y^2 = \left(\frac{f}{1-f^2} \right)^2 \]

which is the equation of a circle centered at \(\left(\frac{1}{1-f^2},0\right)\) and radius \(\frac{f}{1 - f^2}\).

Using Möbius transformation

The mapping \(\frac{1}{1 - fe^{i\theta}}\) is a Möbius Transformation of \(e^{i\theta}\) a complex number on the unit circle centered at the origin.

Here are a couple of fundamental results related to Möbius Transformations that we will use:

  • Möbius transformations map circles to circles
  • If two points symmetric with respect to a circle, then their images under a Möbius transformation are symmetric to the image circle. This is called the “Symmetry Principle”.

Two end points of a diameter \((-1,0)\) and \((0,1)\) of the unit circle get mapped to the two end points \(\frac{1}{1+f}\) and \(\frac{1}{1-f}\) of a diameter of the mapped circle by the symmetry principle. Therefore the centre of the mapped circle is at

\[ \frac{1}{2}\left(\frac{1}{1-f} + \frac{1}{1+f}\right) = \frac{1}{1-f^2} \]

The radius of the circle is given by

\[ \frac{1}{2} \bigg \lvert \left(\frac{1}{1-f} - \frac{1}{1+f}\right)\bigg \rvert = \frac{f}{1-f^2} \]

Back to top