Here's another explanation:
"fifty years" is a noun phrase used as an adverb answering the question "how (old)?".
How old is he? = adverb adjective verb pronoun.
The pattern is NUMBER + UNIT + DIMENSION-ADJECTIVE
Numbers: 3, 6, 10, 20, 75, ...
Dimension adjective: old Corresponding Units: years, days, months, ...
Dimension adjective: long Corresponding Units: miles, feet, yards, meters, light-years
Dimension adjective: wide Corresponding Units: (same as for length)
From this we get "How long?" "Five meters long." "How old?" "Fifty years old." "How deep?" "A millimeter deep." ...
Exception: It's not "25 degrees hot", just "25 Degrees.
I hope it's clearer now!