General notes: Please make sure you're reading from standard input and writing to standard output. (C: stdin/stdout, C++: cin/cout, Java: System.in/System.out, although you probably really want a BufferedReader derived from System.in) I let it slide for a few submissions to this contest, but it probably won't fly at the ACM regional. On a related note... I wrote the problems trying to give you examples of the different ways reading input is terminated in contest problems. In particular, some problems have a terminating case, e.g. a 0 is entered or something. Others had bounded input, e.g. the first line gave you `N' and then `N' lines followed. Others had input terminated by end of file. You should be comfortable with all these different ways. There were a couple failed submissions simply because the terminating input case wasn't handled correctly. Problem 1: Byte Conversions Not a really hard problem. The only mistakes I saw were either not reading in enough input (e.g. only reading off the first line) or putting a return in the wrong spot. Problem 2: Is it a Group? Big problem seemed to be finding inverses. You can still have associativity, but some elements may have no inverses (and thus (G,#) wouldn't be a group). problem 3: Cashier You can process the inputs just like the problem says to (e.g. taking out the largest possible currency from the drawer until change is made). Problem 4: Lock Combination Rankings Sorry about not noticing the missing picture earlier. It is important to see it as it makes figuring out the initial score a little easier. (Someone should have complained about it missing.) Anyway, the thing to realize is that turning the spin wheel clockwise leads to decreasing numbers. Counter clockwise gives increasing numbers. You have to distinguish between the two cases to get the number of spots covered correct. Misc. problems I saw were considering 1 to be prime (it's not, and I sent mail out about it), not sorting the combinations correctly, and missing some points (e.g. 13, although prime, does not get the -10 for being prime -- the problem says all primes, except 13). Problem 5: Baseball Standings You have to be careful about the games behind. You can get some fairly strange numbers from that computation. In one input, the indians had a 90-25 record, while the twins had 96-66. This would never actually happen, but it's worth considering. The twins would be ahead by 2 games on wins, but behind by 20.5 on losses. So, despite not winning as many games, the indians are actually ahead by 17.5 games. The only other major problem was not sorting the standings correctly. Ties were broken alphabetically (there was an example in the sample test case). Problem 6: Robot Paths I did this one by doing a breadth first search on the maze to find the shortest path from the starting point to each open square on in the maze. Along the way, each square got tagged with the minimum number of steps to get there and the square "before" (i.e. the square the mouse moved from to get to this square). When done, you can just read the path off from the maze, starting at the ending square.