I1M2012: Número con mayor cantidad de divisores
En la primera parte de la clase de hoy de Informática de 1º del Grado en Matemáticas hemos comentado la solución con Haskell de un problema propuesto para la Olimpiada Internacional de Matemáticas de 1983. Su enunciado es
”¿Cuál de los números 1, 2, …, 1983 tiene mayor número de divisores?”
Se van a presentar distintas soluciones y comparar sus eficiciencias. La primera definición es
donde (divisores1 n) es el conjunto de los divisores de n.
El cálculo con la primera definición es
En la segunda definición se cambia la definición de divisores
El cálculo con la segunda definición es
En la tercera definición se ordenan los pares
El cálculo con la tercera definición es
Se observa que el tiempo se ha reducido de 9.00 segundos a 2.76.