From The Sunday Times, 9th July 1989 [link]
Five families, each consisting of a mother, father, and one child, are near neighbours. The families have a lot in common, and, to give you some idea of the closeness, I will tell you that last Saturday all 15 family members went on an outing to the circus to celebrate young Laura’s 10th birthday.
The day before that, four of the mothers, Jenny, Lorna, Margaret and Norma, had been on a shopping spree together, and two of the fathers, Ken and John, had prepared a barbecue for all the others. Three of the children, Kevin, Marion and Nigel, are learning the piano under the same teacher.
Mike and Neil are the fathers of daughters. Young Jill, who is not Neil’s child, shares a birthday with Leo’s child (who has the same initial as Mike’s wife) and with Kate’s child (who has the same initial as Leo’s wife). The other two children share a birthday on a different date.
If I tell you that no two members of a family have the same first name initials as each other, you should be able to work out the name of John’s wife and who it was that shared Laura’s birthday last week.
There are now 1400 Teaser puzzles available on the site, so it seemed like an appropriate time to post Teaser 1400.
Between S2T2 and Enigmatic Code there are now 4056 puzzles available in total.
[teaser1400]
Jim Randell 5:26 pm on 4 November 2026 Permalink |
Suppose there are n people present. We know both one half and one quarter of the number of people present are whole numbers, so n must be a multiple of 4.
If each glass has a volume of 1 unit, then the total volume of the drinks is n, and this splits into the volume of gin G and the volume of tonic T.
One glass has (n/2)% of the gin and (n/4)% of the tonic:
Substituting G + T = n we get:
This Python program looks for a viable value for n, where the quantities G and T are in the range (0, n).
from enigma import (Rational, irange, inf, printf) Q = Rational() # consider possible n values (n is multiple of 4) for n in irange(4, inf, step=4): # calculate G and T G = Q(400, n) - n # look for a viable solution if 0 < G < n: printf("n={n} [G={G} T={T}]", T=n - G) breakSolution: There were 16 people present.
With 16 people, if the drinks were distributed equally, then each would contain 6.25% (= 1/16) each of the gin and the tonic.
As it is, one glass gets 8% of the gin (more than their fair share) and 4% of the tonic (less than their fair share).
And the remaining 92% of the gin and 96% of the tonic is distributed between the remaining 15 drinks.
Manually:
We know:
Adding n to each term gives:
Multiplying each term by n gives:
Hence:
And n is an integer multiple of 4, so:
LikeLike