practice algorithms at topcoder.com