http://acm.ashland.edu/2005/problem-set.html