my solution for usaco