1) He has food to last a week.
2) He has enough food to last a week.
Is the food going to last a week or he?
3) They have money to buy a house.
Is '3' correct?
I'd either use 'enough money' or 'the money'. I don't like '3'. But '1' seems