Купить — переходный глагол. Его можно употребить с прямым дополнением в винительном падеже без предлога (купить что? шляпу).
Ответ: купить шляпу.