tentei começar (com um merge sort), mas tem nada certo ainda; ignore