took an embarassing amount of time

things i learned:
- range(x,y) isn't inclusive of the right value
- `/` returns a float when used on two ints
- recursion requires that you use the `return` statement on
non-base-cases as well