Agree with all of the above. Here's an analysis of how the original problem misleads the reader:
True, the men end up paying $27. But $25 is in the hotel's cash drawer, and $2 is in the bellboy's pocket. That can be expressed as ($25 + $2). But then the problem says that the men paid $27, the bellboy has $2, so where's the other dollar. The problem is actually counting the $2 the bellboy swindled *twice*, once with the $27 (25 + 2), and then again after.
It would be more obvious if the men were originally charged, say, $50. Then the bellboy is sent back up with $23. He decides to keep $20, and only return $3. So the men ended up paying $47, the bellboy has $20, so *now* how was an extra $17 generated?