When I first heard about the Zonal Computing Olympiad (ZCO), I thought it was going to be just another programming contest. I was so wrong. ZCO can feel intense — not just because of the questions, but because of the pressure, the time limit, and honestly, the feeling of not knowing if you’re even close to the right answer. So if you’re preparing for ZCO, or even just curious about it, here’s what I learned from my experience, and what I wish someone had told me when I was starting out: You won’t solve every question. That’s normal. ZCO usually has two questions — but they’re not meant to be fully solved by everyone. In fact, very few people solve everything perfectly. So if you feel stuck on the last subtask, that’s completely okay. Instead of stressing about solving everything, focus on solving the parts you can solve — especially the early subtasks. These are often easier and carry a decent chunk of the points. Honestly, just doing well in the first few subtasks of each problem is often enough to get you to INOI. Start small: subtask-first thinking This helped me a lot: Don’t try to solve the whole problem at once. When you first look at a problem, it might feel too big, too confusing. So start by asking: “Can I at least solve the subtask where N ≤ 10 or where time limits are relaxed?” Once you get the basic version working, it becomes easier to build on top of that. And even if you don’t get the full solution, you’re scoring points and building confidence. Practice > Passive Learning If I could go back, I’d spend less time watching tutorials and more time actually solving problems. You get better at competitive coding by doing it, not by watching it. I know it's tempting to go through ten lectures on segment trees, but if you're not applying it to real problems, it won't stick. Past problems are gold One of the best things I did was go through past ZCO problems. I didn't just solve them — I read them, tried to understand the patterns, and figured out what kind of thinking each problem required. Over time, I noticed that ZCO tends to focus on topics like: Greedy algorithms Basic Dynamic Programming Binary Search on answers Implementation with arrays and loops This doesn’t mean you need to know every algorithm out there. In fact... Prioritize what you learn You don’t need to master segment trees or graphs for ZCO. Focus on what actually comes up. If you understand the common types of problems (like train platforms, scheduling, or basic DP), you’ll be in a much better place than someone who’s trying to learn everything at once. Final thoughts ZCO is hard, but don’t let the difficulty make you feel like you don’t belong in competitive programming. You absolutely do. If you're consistent, strategic, and okay with not knowing everything right away, you’ll do great. Get better at spotting patterns, practice subtasks, and most importantly — don’t be scared of the question. Break it down. Good luck, and see you at INOI

When I first heard about the Zonal Computing Olympiad (ZCO), I thought it was going to be just another programming contest. I was so wrong. ZCO can feel intense — not just because of the questions, but because of the pressure, the time limit, and honestly, the feeling of not knowing if you’re even close to the right answer.
So if you’re preparing for ZCO, or even just curious about it, here’s what I learned from my experience, and what I wish someone had told me when I was starting out:
You won’t solve every question. That’s normal.
ZCO usually has two questions — but they’re not meant to be fully solved by everyone. In fact, very few people solve everything perfectly. So if you feel stuck on the last subtask, that’s completely okay.
Instead of stressing about solving everything, focus on solving the parts you can solve — especially the early subtasks. These are often easier and carry a decent chunk of the points. Honestly, just doing well in the first few subtasks of each problem is often enough to get you to INOI.
Start small: subtask-first thinking
This helped me a lot: Don’t try to solve the whole problem at once. When you first look at a problem, it might feel too big, too confusing. So start by asking: “Can I at least solve the subtask where N ≤ 10 or where time limits are relaxed?”
Once you get the basic version working, it becomes easier to build on top of that. And even if you don’t get the full solution, you’re scoring points and building confidence.
Practice > Passive Learning
If I could go back, I’d spend less time watching tutorials and more time actually solving problems. You get better at competitive coding by doing it, not by watching it. I know it's tempting to go through ten lectures on segment trees, but if you're not applying it to real problems, it won't stick.
Past problems are gold
One of the best things I did was go through past ZCO problems. I didn't just solve them — I read them, tried to understand the patterns, and figured out what kind of thinking each problem required. Over time, I noticed that ZCO tends to focus on topics like:
Greedy algorithms
Basic Dynamic Programming
Binary Search on answers
Implementation with arrays and loops
This doesn’t mean you need to know every algorithm out there. In fact...
Prioritize what you learn
You don’t need to master segment trees or graphs for ZCO. Focus on what actually comes up. If you understand the common types of problems (like train platforms, scheduling, or basic DP), you’ll be in a much better place than someone who’s trying to learn everything at once.
Final thoughts
ZCO is hard, but don’t let the difficulty make you feel like you don’t belong in competitive programming. You absolutely do.
If you're consistent, strategic, and okay with not knowing everything right away, you’ll do great. Get better at spotting patterns, practice subtasks, and most importantly — don’t be scared of the question. Break it down.
Good luck, and see you at INOI