General rules
- Each team consists of up to three students as contestants.
- Each team will use a single computer.
- Contestants are allowed to bring their own printed materials (books, notes, etc.) to consult during the competition, but contestants cannot access any internet sources (excluding the online judge, or the scratch website).
- There will be separate winning teams for each level (pre-college & undergraduate)
- Contestants are not to converse with anyone except members of their team and the judge team.
Scoring and ranking (for scratch challenge)
- All work will be judged by judge team based on how well they meet the requirements, and their originality and creativity.
Scoring and ranking (for ICPC-style programming challenge)
- The programming languages of the contest will include C/C++, python, java and Pascal. Additional programming languages may be used.
- An online judge will be used for scoring.
- Solutions to problems submitted for judging are called runs. Each run is judged as accepted or rejected by the judge team, and the contestant team is notified of the results.
- For each run, the online judge tests the submission with a set of secret test data. The run is accepted if the submitted code makes desired outputs within the specified time and memory limit; otherwise it is rejected with messages such as Wrong Answer, Time Limit Exceeded, Memory Limit Exceeded, Crash, etc.
- Teams are ranked according to the most problems solved. Teams who solve the same number of problems are ranked by least total time. The total time is the sum of the time consumed for each problem solved. The time consumed for a solved problem is the time elapsed from the beginning of the contest to the submittal of the accepted run plus 20 penalty minutes for every rejected run for that problem regardless of submittal time. There is no time consumed for a problem that is not solved.