CMIMC Programming
Algorithmic thinking and implementation.
2-Day Format
The programming contest will have a 2-day format. All problems from the AI, Optimization, and New Languages Round will be released on Friday evening, and you will have until Sunday noon to work on them (approx. 40 hours).
AI Round
Write programs to play mini games against other teams.
- Programs run against other teams periodically.
- Live leaderboard updates.
- Language: Python 3.11.
Optimization Round
Solve optimization-based problems with a mathy flair.
- Compete for the closest approximation to optimal.
- Random test case generators.
- Language: Python 3.11.
New Languages Round
Solve coding puzzles in a newly created esoteric programming language.
- Challenges range from simple arithmetic to complex data structures.
- Documentation provided at contest start.
Detailed Rules & General Format
Environment
- All code must be written in Python 3.11 for the AI and Optimization Round.
- Code is graded on a system running Python 3.11.
Submissions
- Submit code anytime during the contest.
- Most recent submission is graded and displayed on leaderboards.
- Each problem has specific time and memory limits (per turn and total).
Starter Code & Strategies
Each question comes with starter code containing a simple, random strategy that performs better than the default in most cases.
Final Scoring
All submissions in all rounds will be regraded to produce final rankings at the end of the contest. Each problem will be normalized so that the best submission is worth 100 points.
In the spirit of the competition, and so that everyone can compete to develop cooler solutions, we encourage teams to not hoard solutions and submit at the last minute.
Competitive Programming Sites
Privacy Policy
Under the GDPR, you have certain rights regarding your personal data, including the rights to access, rectify, erase, restrict processing, object to processing, and data portability. You can exercise these rights by contacting us.