Hotels also charge by room, not by person. If they charged a solo person only for their share, they'd be losing out on money when compared to giving the room to two people. Solo travelers are also charged more because they're considered to spend less on things like food, drinks and entertainment.