5 hotels under $300 for a long weekend staycation