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 10:54 am on 7 May 2020 Permalink |
This puzzle is marked as flawed, as there are two possible solutions.
I assumed the number of grandchildren remained constant (at 7) during the eight years in question (2009 – 2016).
The amounts in the savings account are perfect cubes, that differ by multiples of 7, so we can collect cubes by their residue modulo 7, and consider the sets for each residue to look for 9 amounts that satisfy the remaining conditions.
This Python program runs in 76ms.
Run: [ @replit ]
from enigma import (group, powers, mod, subsets, tuples, printf) # group the cubes (up to 4 digits) in descending order, by their residue mod 7 cubes = group(powers(21, 1, 3, step=-1), by=mod(7)) # choose values for the eight gifts made (2009 - 2016) for s in cubes.values(): for vs in subsets(s, size=9): if s[0] < 1000: continue # and calculate the sequence of gifts gs = tuple((a - b) // 7 for (a, b) in tuples(vs, 2)) if len(set(gs)) != len(gs): continue # gift amounts are all different # output solutions m = max(gs) printf("{vs} -> {gs}, max = {m}")Solution: There are two solutions. The largest amount is received by a grandchild is £ 292, or £ 388.
If we start with 5832 (= 18³) in the savings account, and then give presents of (248, 103, 292, 86, 31, 64, 8, 1) to each grandchild then the amounts remaining in the savings account are:
However, starting with 8000 (= 20³) and giving (163, 278, 388, 67, 104, 112, 13, 14), leaves amounts of:
One way to rescue the puzzle is to exclude 1 as an amount given to the grandchildren (or remaining in the account).
Another way is to require that none of the amounts given to any grandchild is itself a perfect cube.
Either of these restrictions eliminate the first solution, leaving a unique answer of £ 388.
LikeLike
GeoffR 8:28 am on 10 May 2020 Permalink |
% A Solution in MiniZinc include "globals.mzn"; % Yearly account balances var 1000..9999: S1; var 1..9999: S2; var 1..9999: S3; var 1..9999: S4; var 1..9999: S5; var 1..9999: S6; var 1..9999: S7; var 1..9999: S8; var 1..9999: S9; % yearly gifts 2009 - 2016 var 1..1400: G1; var 1..999: G2; var 1..999: G3; var 1..999: G4; var 1..999: G5; var 1..999: G6; var 1..999: G7; var 1..999: G8; % All yearly gifts are different values constraint all_different ([G1, G2, G3, G4, G5, G6, G7, G8]); % Set of cubes up to a maximum of four digits set of int: cube = {n * n * n | n in 1..21}; % S1 is largest yearly account balance constraint increasing([S9,S8,S7,S6,S5,S4,S3,S2,S1]); % All yearly account balances are cubes constraint S1 in cube /\ S2 in cube /\ S3 in cube /\ S4 in cube /\ S5 in cube /\ S6 in cube /\ S7 in cube /\ S8 in cube /\ S9 in cube; % Yearly amounts to distribute amongst seven grandchildren constraint (S1 - S2) mod 7 == 0 /\ (S2 - S3) mod 7 == 0 /\ (S3 - S4) mod 7 == 0 /\ (S4 - S5) mod 7 == 0 /\ (S5 - S6) mod 7 == 0 /\ (S6 - S7) mod 7 == 0 /\ (S7 - S8) mod 7 == 0 /\ (S8 - S9) mod 7 == 0; % Yearly total gifts to each of seven grandchildren constraint G1 == (S1 - S2) div 7 /\ G2 == (S2 - S3) div 7 /\ G3 == (S3 - S4) div 7 /\ G4 == (S4 - S5) div 7 /\ G5 == (S5 - S6) div 7 /\ G6 == (S6 - S7) div 7 /\ G7 == (S7 - S8) div 7 /\ G8 == (S8 - S9) div 7; % Maximum yearly gift var 10..1000: maxv; maxv = max([G1, G2, G3, G4, G5, G6, G7, G8]); solve satisfy; output ["Yearly account balances: " ++ show([S1, S2, S3, S4, S5, S6, S7, S8, S9])] ++ ["\nYearly gifts(£): " ++ show ([G1, G2, G3, G4, G5, G6, G7, G8])] ++ ["\nMax gift = " ++ show(maxv)] ; % Yearly account balances: [5832, 4096, 3375, 1331, 729, 512, 64, 8, 1] % Yearly gifts(£): [248, 103, 292, 86, 31, 64, 8, 1] % Max gift = 292 % ---------- % Yearly account balances: [8000, 6859, 4913, 2197, 1728, 1000, 216, 125, 27] % Yearly gifts(£): [163, 278, 388, 67, 104, 112, 13, 14] % Max gift = 388 % ---------- % ==========LikeLike