why is it just noaptea, and not "la noaptea"? In general, how do you tell if you need a preposition or not?
Simple: adverbials of time differ a lot between languages. You just have to know "noaptea" means "at night". Just like you have to know it's not "in night" or "in the night" or whatever.