Pergunta de entrevista da empresa Microsoft

Challenging algorithm question.