Solución - primera versión del algoritmo