Pregunta de entrevista de LendingTree

Leetcode medium difficulty question, OOP principles, API design.