clean idea
clean solution
math approach