https://medium.com/@gmdebugcloud/day-22-tackling-python-challenges-in-cs50ps-problem-set-2-question-5-e2a571061c98