A man (M), wolf (W), goat (G) and cabbage (C) are on the left bank of a river. There is a boat large enough to carry
the man and only one of the other three. The man wishes to ferry everyone to the right river bank, and the man can
ferry each across, one at a time.
However, if the man leaves the wolf and goat unattended on either shore, the goat is history. Similarly the goat and
cabbage cannot be left unattended by the man.
How can the man bring all those animals to the other river bank safely using the shortest way possible?