¿Te gusta la programación y la matemática?, (si respondiste que no salteate el post), entonces estás con suerte, porque hoy voy a presentarte a Project Euler.
Project Euler consiste en una gran cantidad de problemas matemáticos / de programación (hasta la fecha 183 problemas), incrementalmente complejos, llendo desde “Sumar todos los números reales menores a 1000 que son múltiplos de 3 o 5″ (problema nro. 1) hasta por ejemplo “Determinar el resto cuando (pn − 1)n + (pn + 1)n es dividido por pn2“(problema nro. 123).
Por suerte para los menos diestros en las artes matemáticas (como yo), cada problema trae una pequeña explicación y un ejemplo simple que da una idea mucho más clara de lo que hay que hacer.
En la descripción del sitios, indican que una solución eficiente debería poder calcular el resultado correcto en menos de un minuto, independientemente del lenguaje en que se haga. Hablando de lenguaje, en la parte de estadísticas del sitio se puede ver como se distribuyen los lenguajes entre los participantes, y cuales son los que tuvieron más efectividad (es decir, mayor cantidad de respuestas correctas).
Si bien los últimos ejercicios son bastante complejos, los problemas están diseñados de forma que mientras vas progresando en la lista, vas aprendiendo cosas que van a ser útiles para resolver los próximos ejercicios.
Una vez que uno completa un ejercicio, e ingresa el resultado correcto, el sitio le permite ingresar a un foro de discusión específico de ese problema, donde se puede discutir la forma en que se resolvió, y ver de que forma plantearon el código otras personas.