This release adds the Wolf, Goat and Cabbage problem to the application.
These two commands are equivalent:
cargo run -- wolf-goat-cabbage
cargo run -- wolf-goat-cabbage --boat 2 --farmers 1 --wolves 1 --goats 1 --cabbage 1
Running them prints a solution like the following:
At t=0; left bank: farmer, wolf, goat and cabbage; right bank: empty
→ farmer and goat cross forward
At t=1; left bank: wolf and cabbage; right bank: farmer and goat
← farmer returns alone
At t=2; left bank: farmer, wolf and cabbage; right bank: goat
→ farmer and cabbage cross forward
At t=3; left bank: wolf; right bank: farmer, goat and cabbage
← farmer and goat return
At t=4; left bank: farmer, wolf and goat; right bank: cabbage
→ farmer and wolf cross forward
At t=5; left bank: goat; right bank: farmer, wolf and cabbage
← farmer returns alone
At t=6; left bank: farmer and goat; right bank: wolf and cabbage
→ farmer and goat cross forward
At t=7; left bank: empty; right bank: farmer, wolf, goat and cabbage