From The Sunday Times, 26th April 1970 [link]
Near my house is an impressive block of flats. It stands 16 storeys high, and each story is a lofty 15 feet from floor to floor. My old friends Bob and Horace operate the two lifts, and both start their shift each morning leaving the ground floor at 8 a.m. precisely.
The two lifts make automatic compulsory stops at the ground level (there is no basement), the 12th and top floors. But below the 12th, Bob serves only the odd-numbered floors, and Horace the even numbers; these stops are also compulsory (up and down). All stops take just 10 seconds, except at ground level where both lifts wait for 20 seconds.
Above the 12th both Bob and Horace stop as desired, going up and coming down. Both lifts travel between floors at identical speeds.
Every morning the two attendants make a rendezvous to exchange newspapers and collect their coffee when their arrivals at a certain floor coincide exactly at two minutes after 11 a.m.
In feet per second what the speed of each lift between stops?
Note: In the UK the floors in buildings are: ground floor, first floor, second floor, etc.
Also, as stated this puzzle does not appear to have a unique solution.
An answer was published (with Teaser 467) stating:
“This clever trap, with its nice reasoning, outweighed the slight mathematical bias and kept down the entry to a mixed handful.”
But later, with Teaser 471 the following statement was made:
“[465: Regretfully a wrong transposition led to a false calculation of time.]”
In the comments I give a variation on the puzzle that does have a unique answer.
This puzzle was originally published with no title.
[teaser465]
Jim Randell 7:05 am on 27 March 2019 Permalink |
(See also: Grid Puzzle)
There’s a handy [[
grid_adjacency()]] function in the enigma.py library to compute the adjacency matrix on a square grid.This Python program can be used to calculate the number of paths on an m×n grid. For the 3×3 grid it runs in 81ms.
Run: [ @repl.it ]
from enigma import (grid_adjacency, icount, arg, printf) # consider an m x n grid m = arg(3, 0, int) n = arg(m, 1, int) # adjacency matrix adj = grid_adjacency(m, n, include_diagonal=1) # generate paths with k additional steps, prefix p, visiting different squares def paths(k, p): # are we done? if k == 0: yield p else: # extend the path for x in adj[p[-1]]: if x not in p: yield from paths(k - 1, p + [x]) # count maximal length paths that start at square 0 k = m * n - 1 t = icount(paths(k, [0])) printf("[{m}x{n}] total paths = {t}")Solution: There are 138 different possible routes.
From square 0 we can go to to the central square (4) or to an edge square (1 or 3), so we can just count the paths with prefix [0, 4] and [0, 1]. There will be the same number of paths with prefix [0, 3] as there are with prefix [0, 1].
LikeLike