Preliminary Round - A quiz like round where a series of programming puzzles or theoretical computer science questions will be given. 10 teams will qualify to the final round. ·
Planning phase - The teams will be given 45 minutes to plan the structure of the Classes/Functions they will be using. The teams will need to plan the functions they will be using- the name and the functionality of the function.
Coding Phase - In this phase, the team members split, and start working on their individual systems, each working on their respective Classes/Functions. Here, it will be necessary to make calls to functions of other classes that a member is currently not working on. So, the planning phase is crucial. After a period of 20 minutes, the team members shuffle in a circular fashion, and continue to code where their teammate left off. This happens for a total of 3 times (i.e., 20+20+20 = 60 minutes for this phase).
Integration Phase - In this phase the teams get to integrate their code on one system, and debug their Classes/Functions. The teams can test their codes with sample inputs provided. This will last for another 5 minutes.