Teaser 2433: [Date of birth]
From The Sunday Times, 10th May 2009 [link]
I was looking at the dates of birth of three of my friends. When written in the format DDMMYY, each date of birth uses six consecutive digits in some order.
Today (just taking each of their ages on their last birthday) the difference between Alex’s age and Bernard’s age is 40 or more, and the difference between Alex’s age and Charlie’s age is 14.
What, in the format DDMMYY, is Charlie’s date of birth?
This puzzle was originally published with no title.
[teaser2433]


Jim Randell 8:45 am on 5 May 2026 Permalink |
Note that the puzzle was originally set on 10th May 2009.
The first digit of the month can only be 0 (for Jan – Sep) or 1 (for Oct – Dec).
So the consecutive digits can only be 0-5 or 1-6. And if they are 1-6 then the month can only be 12 and then it is not possible for there to be a date in the range 01-31 using digits 3-6, so the digits used must be 0-5.
This Python program runs in 64ms. (Internal runtime is 1.5ms).
from datetime import date from enigma import (irange, subsets, catch, printf) # date the puzzle was set dS = date(2009, 5, 10) # calculate age def age(dX, dY): return (dY.year - dX.year) - ((dY.month, dY.day) < (dX.month, dX.day)) # collect possible dates and ages ds = set() for (u, v, w, x, y, z) in subsets(irange(0, 5), size=6, select='P'): (d, m, y) = (10*u + v, 10*w + x, 1900 + 10*y + z) t = catch(date, y, m, d) if t is not None: ds.add((t, age(t, dS))) ss = set() # consider DOB for A for (dA, aA) in ds: # choose DOB for C for (dC, aC) in ds: if not (abs(aA - aC) == 14): continue # chose DOB for B for (dB, aB) in ds: if not (abs(aA - aB) >= 40): continue printf("[A={dA} ({aA}); B={dB} ({aB}); C={dC} ({aC})]") ss.add(dC) # output solutions for dC in ss: printf("C = {dC:%d%m%y} [{dC}]")Solution: Charlie’s date of birth is 250341 (25th March 1941).
So Charlie was 68 when the puzzle was set.
Alex was born in 1954, and his date of birth (and age) is one of the following:
Whichever it is his age is 54 and he is 14 years younger than Charlie.
Bernard’s date of birth (and age) is one of the following:
And he is 94, 95, or 96.
But whichever it is he is at least 40 years older than Alex.
Note: The puzzle only works when set between 25th March 2009 and 22nd May 2009.
LikeLike