HashCode20 Qualifications Problem statement: https://hashcodejudge.withgoogle.com/#/rounds/6313004828196864/