ACM
Para los programadores que quieran probar su destreza para resolver problemas, aquí dejo esta página donde se encuentra los problemas de la ACM, deben registrarse, luego elegir el problema a resolver, los cuales se encuentran en inglés y español. Una vez leído el problema debemos elegir en que lenguaje vamos a programar. Las opciones que nos permite el corrector automático son Ansi C, C++, JAVA, PASCAL.
Para los programadores de java, no olvidar leer los pasos a seguir para la correcta solución.
Aquí les dejo un par de soluciones para 2 problemas:
Se siente bien cuando se recibe la siguiente pantallita:

recuerdo cuando trataba de hacer los desafíos de mirc scripting y de php, se siente bien saber que puedes