euler problems 20, 21, 22