logoalt Hacker News

How old is Ann?

57 pointsby ibobevtoday at 12:14 PM59 commentsview on HN

Comments

judofyrtoday at 1:51 PM

Rephrasing it makes it easier to grasp:

Mary is 24 years old. When Mary was Ann’s current age, Ann was 12 years old (half Mary’s current age).

This makes it a bit easier to realize that Ann’s age has to be right in the middle of 12 and 24.

show 4 replies
losvedirtoday at 7:14 PM

I don't know why but I really struggled to internalize what the question was asking. Here's my take on a rewrite that's clearer:

Mary is 24, which is twice as old as Ann was some time ago. At that time, Mary was the age that Ann is now. What is that age?

HarHarVeryFunnytoday at 3:49 PM

Ann is 18.

I think what makes it confusing is the "variable overloading" referring to both the current ages of Mary and Ann (M & A), and their ages at some point in the past "when Mary was as old as Ann is now" (M' & A').

So, what we're given is:

M = 24

M' = A

M = 2A' => A' = M/2 = 12

Since the age gap between Mary and Ann is constant, we know:

M - A = M'- A'

So, substituting in the known values:

24 - A = A - 12

2A = 36

A = 18

We can double check the result. Since Mary (24) is 6 years older than Ann (18), then when Mary was 18 Ann would have been 12, so Mary is now twice that age as given.

pkastingtoday at 7:53 PM

The closing problem is more fun.

> A man is twice the age his wife was when he was the age she is now. When she reaches his present age, their combined years will be 100. Find the age of each.

This seemed initially like something amenable to guessing and checking a few ratios. <narrator voice>It was not.</narrator voice>

My answer: The man is 44 4/9 years old, the wife 33 1/3 years.

anigbrowltoday at 6:30 PM

It's amazing to me how much effort people invest in elaborating wrong answers.

The key insight here is to remember that time moves the same for both Mary and Ann. Let's call the number of years between past and present X. Then

24 - X = 12 + X => 24 - 12 = 2X => X = 6.

simonreifftoday at 2:51 PM

Ah yes. The famous problem that is ambiguous because it ignores space travel!

Let M_n := Mary's age now = 24, A_n := Ann's age now, and let M_p, A_p be the ages of Mary and Ann at a certain point in the past. We have that M_n = 24 = 2(A_p) from "Mary is 24 years old. She is twice as old as Ann was", immediately implying that A_p = 12. At the point in time p when M_p, A_p were the ages of Mary and Ann, respectively, we have that M_p = A_n from "when Mary was as old as Ann is now". Also, let x := | M_n - M_p | = | A_n - A_p | be the amount of time that has passed between the point p in time and now. Since M_n > M_p and A_n > A_p by construction, we can drop absolute values, yielding M_n = M_p + x, A_n = A_p + x. Substituting, we have M_p = 24 - x, and A_n = 12 + x, yielding x = 24 - M_p = A_n - 12, yielding A_n = 36 - M_p. But, since M_p = A_n, we can write 2(A_n) = 36 yielding A_n = 18.

This problem, however, completely ignores the fact that Ann boarded an interstellar spaceship 6 years ago at a reasonable fraction of the speed of light c. To account for this missing detail, we need to use Lorentz factors. Since Ann was the one traveling in space, we have to adjust her current age by calculating A_n = A_p + x * sqrt(1 - (v/c)^2)), where v is Ann's velocity Given that the problem is missing the critical detail of how fast Ann is hurtling towards the outer boundary of the universe, we really can't calculate their age at all. Nonetheless, given the completely reasonable and plausible assumption that Ann has been traveling at 95% of the speed of light because spaceships totally can do that, Ann is obviously about 13.87 years old. So 18 years old is clearly the wrong answer.

Note that the fact that Ann is not aging as much due to traveling at an enormous velocity does NOT change Mary's age. Mary remains exactly twice as old as Ann was at the given point in the past, so she's 24 and 6 years have passed from her perspective. Only Ann's age changes. Obviously.

lordgrenvilletoday at 1:47 PM

"Any eighth-grade boy or girl who is 'all there' should solve it in about thirty seconds" is hyperbole (it took me a couple of minutes), but in general the public reaction to this seems like a demonstration of the Flynn effect.

show 3 replies
sebmellentoday at 3:07 PM

This may help people:

> Mary is 24 years old. She is twice as old as Ann was (12) when Mary was as old (18) as Ann is now (18). How old is Ann?

So 6 years ago, Mary was 18, and Ann was 12.

Today, Mary is twice the age that Ann was (12 * 2) at the time that she (Mary) was 18, making her 24.

What makes it confusing is that the sentence is comparing Mary’s present age with Ann’s past age (which I did not catch until mulling it over a bit).

show 1 reply
Hackbratentoday at 2:23 PM

> When Mary had a little lamb, she was twice as old as Ann was when Ann was as old as Mary now claims to be. How old is the sheep? —James Barton Adams.

I love this response so much.

OvidStavricatoday at 6:16 PM

How interesting!

This discussion itself offers insight on the actual need for technical professionals to be able to logically reason through non-obvious [information] structures.

I've anecdotally suspected that the ability to synthesize information into a navigable data structure and subsequently analyze it, both from internal and external POV, is not a hard requirement for the majority SWE positions.

skipantstoday at 2:30 PM

Here's the simplest form I could distill it to. The other comments I find quite verbose or confusing, no offense intended.

    x: Ann's current age
    y: The age difference between Ann and Mary

    24 = x + y      (ie. their current ages)
    x = (24/2) + y  (ie. their age in the past)

    Solve for y in one equation and plug it into the other. You'll get x = 18.
show 2 replies
Garleftoday at 3:40 PM

My approach at parsing this:

There's two point in time with two ages each:

M, M0, and A, A0

Then the sentence can be expressed as:

* M = M0 + X and A = A0 + X and (X is the time difference)

* M = 24 and ("Mary is 24")

* M = 2 * A0 and ("Mary is twice as old as Ann was")

* M0 = A ("Mary was as old as Ann is now")

tinestoday at 1:41 PM

Wait so how old is she?

show 5 replies
buzzmtoday at 2:56 PM

I am surprised no one spotted the obvious solution:

perl -e '$_=24;print+(y///c,$m=$_)&&$_*3/4 .$/'

tempfiletoday at 2:01 PM

Mary IS 24. So Ann WAS 12. Say that was X years ago. Then Mary WAS 24-X and Ann IS 12+X. So 24-X=12+X, X=6, Ann is 18.

I can't see a way to do it without algebra.

show 3 replies
joeyagrecotoday at 7:20 PM

Ann is 7 years old.

bmfischer3today at 1:26 PM

This has flashbacks to GMAT problems.

feelameetoday at 1:42 PM

what the true answer? oh, there is no? My intuition says that Ann now is 24

show 2 replies
nlytoday at 1:25 PM

Opus says Ann is 18

show 3 replies
xelxebartoday at 2:56 PM

Hallucinations like these make it pretty clear that these agents do not really understand or think, IMHO.

show 1 reply