solutions to USACO problems