solutions to some of the Usaco programming challenges