Like Boatguy30 said, depends on the boat but also the load you carry. A flat bottomed, lightly built 20' with a small cuddy cabin, small fuel and water tanks
and 1-2 people could probably get by with 70-80 HP. But a heavily built, deep V, with a full cabin, big fuel and water
and 4-5 people might need 150 HP just to get on plane.
On the other hand, if you have a boat with higher HP than you need, doesn't mean you have to max it out every time you go cruising. Throttle back a big engine
and you should get fuel mileage as good as you would with a smaller engine
running at flat out. Plus you'll get longer life and probably more reliable service
from an engine that you run at lower power output, especially gas engines.