Hola buenas! A raíz del hilo de retos de programación web se me ha ocurrido hacer una versión para resolución de algoritmos que paso a explicaros:
Funcionamiento
Cada semana propondremos tres problemas de algoritmia de la página project euler (o de cualquier otro sitio), ordenados en diferentes niveles de dificultad: fácil, medio y difícil. Se pueden resolver en cualquier lenguaje de programación, menos en javascript (es broma ). Tendremos 7 días para hacerlos, cada uno el que quiera/pueda y según los vayamos teniendo los iremos subiendo a este post.
Algunas normas:
No se puede utilizar ni ver códigos de terceros para resolver el problema, la idea es que cada uno llegue a su propia solución y una vez que la haya subido vea las de los demás para comparar. Esto evidentemente no se puede controlar pero nadie va a ganar nada por resolverlo.
Las soluciones se pondrán dentro de spoilers para evitar accidentes.
Además del código, se deberá poner el resultado de ejecutarlo para comprobar que realmente funciona como debe y da el resultado esperado.
Retos semana #1
Al ser la primera semana voy a proponer yo directamente los tres algoritmos pero para el resto de semanas creo que lo suyo será abrir una encuesta.
Nivel fácil => 1000-digit Fibonacci number (número 25)
Nivel medio => Singular integer right triangles (número 75)
Nivel difícil => Palindromic sums (número 125)
El tema de la dificultad es muy relativo, la página los ordena según el número de personas que los han resuelto. Hay un total de 610 algoritmos, este último el más dificil, y el que yo he puesto como difícil está en el 125. Si vemos que se quedan cortos y los resuelve mucha gente ya los iremos calibrando para próximas ediciones.
SOLUCIONES
Nivel fácil => 4782
Nivel medio => 161667
Nivel difícil => 2906969179
Por mi parte me comprometo a mantener actualizado el post si veo que hay un mínimo interés. Iré enlazando las soluciones de cada uno en #1 para tenerlo todo organizado. Si la cosa se anima mucho también había pensado en que podríamos tener un repositorio dónde ir subiéndolas.
Cualquier sugerencia o consejo será más que bienvenido.