Portando a solução do problema para Java