Solve these algorithmic problems | Uber Interview Question