Chapter 152
Letter-Lengths and the Caffeine Contest
The Riddler for June 23, 2017. The Express is a word-square puzzle whose hidden logic is the length of the spelled-out English number. The Classic, the “Caffeine King” puzzle, is a participatory office contest with no derivable optimum, and we defer it for the same reason we deferred the two Battle for Riddler Nation rounds.
Riddler Express
There is a very specific logic underlying the grid of numbers below, and is somewhere between and . What is ?
The Riddler, FiveThirtyEight, June 23, 2017(original post)
Solution
The trick is to read each cell not as a number but as a word: the spelled-out English name. Then the grid hides a length pattern.
Write out each cell with the corresponding length of its English name: Each row reads left to right as lengths , , , and each column reads top to bottom with the same pattern: lengths increase by one along every row and column. So must have length .
Now is an integer between and whose name has exactly letters. The candidates are “three”, “seven”, and “eight”. But already occupies the bottom-left corner and already occupies the top-right corner, so is the only remaining -letter number:
The computation
Encode the rule directly: for each in , fill the centre cell and check that every row and column has letter-lengths in strict arithmetic progression with common difference . Reject any already appearing elsewhere in the grid.
NAMES = {1:"one", 2:"two", 3:"three", 4:"four", 5:"five", 6:"six",
7:"seven", 8:"eight", 9:"nine", 10:"ten", 11:"eleven",
12:"twelve", 13:"thirteen", 14:"fourteen", 16:"sixteen"}
def L(n): return len(NAMES[n])
def consistent(grid):
"""Each row/column has letter-lengths strictly increasing by 1."""
for row in grid:
if [L(c) for c in row] != [L(row[0]) + i for i in range(3)]:
return False
for j in range(3):
col = [grid[i][j] for i in range(3)]
if [L(c) for c in col] != [L(col[0]) + i for i in range(3)]:
return False
return True
base = [[6, 4, 7], [5, None, 12], [3, 11, 16]]
used = {6, 4, 7, 5, 12, 3, 11, 16}
for x in range(1, 15):
if x in used: continue
g = [row[:] for row in base]; g[1][1] = x
if consistent(g):
print(f"X = {x}")
# X = 8
The unique value that makes every row and column letter-length increment by exactly one prints, as required.
Riddler Classic
The Caffeine King. The Riddler office has one coffee pot holding one gallon. Workers take turns drawing coffee; each worker writes down in advance how many gallons (between and ) they will try to pour. If at least that amount is in the pot, they drink it; if less remains, they get nothing and must refill the pot. Workers try to maximise the coffee they actually drink while minimising the chance they have to refill. Submissions are pooled, the office order is randomised, the simulation is run, and whoever drinks the most wins.
The Riddler, FiveThirtyEight, June 23, 2017(original post)
Deferred (participatory contest)
This Classic has no derivable optimum from the puzzle statement: the “answer” is whichever number, among the actual submissions of real readers, scored highest in the run tournament. The winner’s value (Brian Hare’s , drinking an average of gallons per trip) depends on the empirical distribution of other submissions, not on any structural property of the game. There is no Nash equilibrium for a player to box: the game is a simultaneous-move large-population contest whose best response depends on the whole histogram of competitors’ choices, which the puzzle hides until after submissions close. Iterating best responses against any assumed prior produces a different “answer” for every prior.
We defer this puzzle for the same reason as the February , Battle for Riddler Nation Round , the May , Round , and (separately) the October , gerrymander and the November , map-colouring game. All sit in the same category: the question’s resolution is empirical or participatory rather than mathematical. The official write-up reports that the winner edged out the runner-up by a margin of gallons per trip (effectively a tie under sampling), and that requests clustered near , near , and at a suspicious spike at from a small group of trolls. None of this can be derived; it can only be re-simulated against the same reader pool, which we do not have.
This is the fifth deferral in the build, after the four already noted (two gerrymander/colouring games, two Riddler Nation rounds).