Some Example Strategies 1. This strategy is quite useful for novice teams, or those who do not want to get into a lot of practice and strategy tuning, and, therefore, is in no way optimal. The basic idea is to work as individually as possible to try to minimize overhead. Everyone reads a couple of problems, takes the one he likes most and starts working on it. When a problem is finished, a new one is picked in the same way and so on.
Advantages are that little practice is needed.
Total elapsed time will be minimal, since the easiest problems are solved first. Since the easiest problems usually have the same level of difficulty, everyone will finish their problem at about the same time. Thus the terminal will not be used for the first hour, since everyone is working on a problem on paper, and remains a bottleneck thereafter. Furthermore, only the easy problems will be solved, because no time will be left for the hard ones. The conclusion is that, provided your programming skills are adequate, you will solve about three or four problems as a team.