Hier ist noch was interessantes: topcoders
http://community.topcoder.com/tc.
Für die meisten hier wird der Algorithm Wettbewerb interessant sein, aber es gibt auch Wettbewerben zu Software Engineering usw.
Man kann umsonst Teilnehmen und im Wettbewerb gegen andere algorithmische Probleme lösen.
Die Aufgaben sind unterschiedlich, es gibt viele mathematische Probleme oder was man sonst so aus Algorithmen Vorlesungen oder ähnlichen kennt, also viele Graphenprobleme, dynamische Programmierung etc.
Die Aufgaben/Statistiken werden in einem extra Programm angezeigt, dort nimmt man auch an den Wettbewerben teil oder übt an alten Aufgaben. Die Lösung kann dort direkt eingetippt werden(mit Syntax Highlighting), es können C++/C#/Java als Programmiersprachen mit Standardlibs verwendet werden. Das Programm wird dann auf dem Server kompiliert und ausgeführt und automatisch getestet.
Es gibt auch Wettbewerbe mit Preisen. Die Top-Leute in der Statistik haben meistens auch 100k+ Euro/Dollar gewonnen. Da mitzuhalten ist aber extrem schwer.