He aquí el algoritmo: