Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
The user can now choose an arbitrary definition of cheapness from 1) least total levels, 2) least prior work, 3) least minimum XP, and 4) least maximum level at any given step. The styling needs some work (I'm a newbie with CSS styling, but am starting to learn!), but it is functional, can be tested on God boots (10 enchantments). The leftmost item has highest priority, then the second one has next priority and so on... so the lower priority choices can break ties. This priority ranking does come at the cost of resetting the memoize cache between calculations, but this shouldn't be a problem, because they seem to still be pretty fast,
If there are more possible definitions of cheapness, please let me know! I will try add all that we come up with. The current definitions are very neat to mess around with and see slight changes in the optimal instructions.