The contest format has changed significantly in MCC 2026. Other than that, changed blocks are marked with a bar on the left, and changed text is highlighted like this.
- Contest Structure
- Contest Regulations
- Problem Format
- Categories
- Awards and Certificates
- Beyond MCC
- FAQs
Contest Structure
- Time: Participants will attempt to solve 4 to 6 problems within a 48-hour window.
- They may attempt the problems anytime during the entire two-day window.
- Venue: Participants may work on the contest anywhere, including at home.
- Scoring: Only the final score will be used for ranking.
- Incorrect answers and submission time will not affect ranking.
- Platform: The contest will be held on CMS.
- A practice contest will run beforehand so participants can get familiar with the platform.
Contest Regulations
- During the competition, participants are allowed to:
- Use any printed/online resources and tutorials.
- During the competition, participants are not allowed to:
- Use generative AI or LLMs to help with the contest problems.
- For details, we will follow the AtCoder Rules against Generative AI.
- Examples of prohibited AIs (non-exhaustive): GitHub Copilot, Claude and Claude Code, ChatGPT and Codex, Gemini and Antigravity.
- Google is allowed, but please do not read the AI overview.
- Discuss the problems with others, including on online forums.
- Provide solutions online.
- Use generative AI or LLMs to help with the contest problems.
- Participants caught violating the rules are subject to disqualification from MCC and the IOI selection for that season.
- Participants must notify the organisers (
mcc [at] ioimalaysia [dot] org) immediately if they become aware of other participants cheating.
Problem Format
- Language: The problem statements will be available in English, Bahasa Malaysia, and Mandarin Chinese.
- There are two problem formats: output and code, described below.
- Each problem may be presented in one or both formats. If both, it appears as two separate problems on the contest platform.
- At least 50% of the contest’s total score will be in output format.
Format 1: Output format
- Participants will receive text files with input data (referred to as input files) and need to upload output files.
- Each input file has a score. Contestants get the corresponding score when they submit a correct output file for it.
- Participants may use any method to produce the output, including computing by hand without code.
- Participants do not need to upload code for this format if they did not use code.
- However, if participants wrote code to solve problems, they must save their code to be submitted for the exit survey.
Output format is close to the format used in MCC 2019-2025.
Format 2: Code format
- Participants must submit code that solves the problem within the time and memory limit against hidden input files.
- The code should read from standard input and write to standard output (standard I/O).
- The supported languages are C++, Python, Java, C, C#, Rust, PHP, Haskell, Pascal.
- Subtasks:
- Each problem is split into subtasks, which are additional constraints on the input that make the problem easier.
- Each subtask has a score. The submitted code must correctly solve all input files in a subtask to get its points.
For both formats
- Submission limit: Each problem has a maximum limit on number of submissions to prevent answer spamming.
- For output format, all input files share the same submission limit.
- One submission attempt (which may include one or more output files) consumes one from that shared limit, regardless of how many outputs it contains.
- Files not included in a submission are auto-filled from your most recent submission of that file.
- We plan to make the limit lenient enough so that the above isn’t an issue.
- For output format, all input files share the same submission limit.
- Input/output: see USACO Guide: Input & Output (covers both standard I/O and file I/O; change language in Settings).
- Participants will know whether their submission is correct immediately after submitting.
Sample Problem
Problem: Sum
Given a list of numbers a_1, a_2, ..., a_n. Output the sum of all numbers.
Input format:
n
a_1 a_2 ... a_n
Output format:
Output the sum of all numbers on one line.
Sample input:
100
22 39 68 90 22 53 80 36 16 44 48 29 13 24 51 69 99 65 58 41 68 57 66 5 44 10 23 1 24 64 29 85 6 22 51 14 98 93 71 77 100 92 62 69 76 83 19 68 75 40 16 20 47 95 60 71 34 11 80 90 14 39 69 71 18 64 63 89 57 88 52 2 71 2 71 20 12 49 97 33 43 7 30 37 8 83 9 68 96 72 99 21 53 68 25 71 2 31 65 69
Sample output:
5021
This problem may be given in the output format or code format.
- Output format: Participants receive the full input file with all 100 numbers and must submit the corresponding output file (e.g.
5021). - Code format: Participants do not see the input file. Their code must handle all hidden input files without knowing them in advance.
Past MCC problems are available here. Code format problems are in MCC 2016 and before, and output format problems with test data are in MCC 2023 and later.
Categories
There are four categories in MCC. Contestants should join the first category that applies to them:
- Bongsu / Junior – 15 years old or below (based on birth year)
- Muda / Intermediate – 17 years old or below (based on birth year)
- Sulung / Senior – 19 years old or below (born on 1 July and later)
- Open – otherwise
The Open category is open to everyone.
The Junior, Intermediate, and Senior categories are only open to those who are eligible for IOI in the following year (with some conditions). Specifically, they are open to those who:
- are either studying in Malaysia or are a Malaysian citizen studying abroad; AND
- are enrolled in a school at a level of secondary education or lower; AND
- are not enrolled in a degree programme at a tertiary education institution with a half-time or greater load; AND
- are born on or after 1 July in year \((\text{MCC year} - 19)\) (i.e. not older than 19 years old on 1 July).
In particular:
- The following groups are eligible for the Junior/Intermediate/Senior categories:
- Students in a pre-university program (e.g. Foundation, A-levels, IB, Diploma).
- Non-Malaysian students studying in Malaysia.
- Malaysian students studying abroad.
- Homeschooled students.
- Primary school students are eligible for the Junior category.
See the IOI regulations for eligibility information (section S2.5 as of writing).
Only participants in the Junior, Intermediate, and Senior categories are eligible for IOI selection. The organisers reserve the right to make the final decision on IOI eligibility. Eligibility for IOI implies eligibility for MCC, but not vice versa.
Awards and Certificates
- There will be Gold, Silver, and Bronze awards for each category. In each category except Open:
- At least the top 1/12 of contestants will receive Gold.
- At least the top 1/4 of contestants will receive Silver.
- At least the top 1/2 of contestants will receive Bronze.
- We may decrease the score needed for each award.
- For the Open category, the same Gold/Silver/Bronze fractions apply, but the cutoff scores are computed by pooling Open and Sulung contestants together. Only Open participants receive Open awards using these cutoffs.
- All contestants will work on the same problems, but award cutoffs will be different for each category.
- A participation certificate will be given to all participants who made at least one submission (which may be incorrect).
- We will be giving out digital certificates instead of physical ones.
Beyond MCC
MCC is the preliminary selection process of a year-long program to identify and train the top computing talents in Malaysian schools for the International Olympiad in Informatics (IOI) and other informatics competitions (e.g. APIO).
Top scorers in MCC will be:
- Invited to a training camp introducing algorithms and algorithmic thinking, tentatively held around December.
- Invited to the Malaysian Computing Olympiad (MCO), a programming competition tentatively held around April next year.
The top scorers in MCO will be invited to:
- Intensive training camps conducted by experienced Olympiad participants;
- IOI team selection tests; and
- Asia-Pacific Informatics Olympiad (APIO), an annual online contest among countries in the Pacific Rim region.
After the training camps and selection tests, four students will be selected to represent Malaysia in the IOI. We may also select students to represent Malaysia in more informatics competitions (e.g. European Girls’ Olympiad in Informatics (EGOI) in 2025).
FAQs
If I participate, will I always get a certificate?
Yes, but you must make at least one submission (which may be incorrect).
I am new to coding, what language should I learn?
- For beginners: Python is recommended. Once you know how to program in a certain language, the skill can be easily transferred to other languages.
- For experienced ones: C++ is recommended as it is the only language supported in the later rounds (see the Beyond MCC section).
My program outputs the correct answer for the sample input, why is my submission for other inputs incorrect?
Check your logic and code – your program might work for the sample input, but not for the other test cases.
The input or output is too large for the terminal
Don’t paste large input into the terminal, and don’t rely on terminal output. Read from and write to files instead.
See USACO Guide: Input & Output for how to redirect stdin/stdout to files (change language in Settings).
If pasting is still slow, use your computer’s built-in text editor instead of an IDE like VS Code:
- Windows: Notepad
- MacOS: TextEdit
My computer is not fast enough, the input is too large
If pasting the input is slow, see the question above.
Otherwise, all inputs are solvable by an ordinary computer in ~10 seconds. The inputs are intentionally large to force you to find an efficient algorithm.
If you still think your computer is too slow, try an online IDE:
- GitHub Codespaces
- You should disable AI features and not use them.
- USACO Guide IDE
- Some problems may take a bit more than 5s and some inputs are too large to be uploaded.
- wasm-ide
If the answer is 2 3, will the outputs differing only in whitespace be accepted (e.g. _2___3__, where _ are spaces)?
To be lenient, we often ignore whitespace differences (e.g. spaces, newlines). However, we do not guarantee that whitespace differences are always ignored.
If the answer is 2 3000, will the outputs 2,3000, 2-3000, 2.0 3.0, or 2 3e3 be accepted?
No. Please follow the specified output format correctly. Unless otherwise specified, floating point numbers (decimal or scientific notation) are not accepted when integers are expected.