Journal • June 9th, 2026

My First ICPC Experience

How it started?

Everything started one morning when I was working at the Learning Resources Center. I saw Professor Strenn send out a notification about picking candidates for ICPC. I had never heard of ICPC before. I only know people from the team programming club used to talk about ICPC, and they were training for that last semester.

I was hesitating to click the link to apply because I knew this competition wasn't something you just casually walk into. On one hand, I think I will learn a lot by practicing my skills in coding, but on the other, I got a B+ in Professor Strenn’s Data Structures and Algorithm class, so I don't have the confidence in competing. After 30 minutes of arguing with my demons, I clicked that form, put all of my information, and I clicked submit. At that moment, the only thing that came to my mind is, I have nothing to lose.

I Got In !!!

A few weeks later on Discord, I saw this message – a list of names for ICPC competitors, and my name was on there, not waitlisted. I was really happy and it felt unbelievably crazy that I was in the ICPC team. I AM GOING TO COMPETE!!! I promised myself, I'm gonna work hard. I'm gonna do as many problems as I can. I'm gonna solve problems in ICPC. I'm gonna treat it really seriously.

ICPC Practice

Our practice for ICPC started every Friday at 2 p.m. and ended at 6ish p.m. Some students stayed till 9 p.m. The first session was kinda harsh. At first, I was listening to all the rules and structure for the competition, and Professor Strenn walked us through some problems, and then he said: “Alright, it’s time for you folks to do some problems.” That’s where the tension starts. I was doing a practice problem and I had no clue how to solve it. I took two semesters of Java class and I watched CS 50P on Youtube the summer before, so I basically forgot how to code in Java. So I just decided to focus on the basic ones only in order to make myself review Java syntax and grammar. I am going to be honest here, solving one problem that involves basic data types and few if loops took me two hours to solve.

After a few sessions of practicing, we were assigned to teams. I was in Team Green, and my teammates are Gabby and Masha. Masha is really good at solving coding problems in Python. Gabby is good at solving problems both in Python and Java since she is a TA for one of the CS courses. We all agreed upon making our main language Java in the contest.

Cheatsheet maxing

So we started meeting really regularly, both in UCSB and SBCC, busy making cheat sheets, and doing Kattis problems. We were really locked in. Since ICPC allowed you to bring as many notes as you can, our cheatsheet making mission became crazy. My teammates and I made a bunch of cheat sheets and notes, mainly about the syntax, grammar, and algorithms in both Java and Python so that we can have another language as a back-up. I looked at most of the previous problems from ICPC and then prompted it to ChatGPT and let it generate the solution with comments so that it would be easier for us as a reference. At the same time, we formed a friend group, talking about potential future trips and plans. We started having food outside of class, meeting outside of class, and hanging out outside of class. Two days before ICPC, I was still working at the Learning Resources Center so I decided to print out everything from there. I still remember I stayed after my shift printing out a few stacks of stuff at the same time. It was fun.

Day 1

It was raining in Santa Barbara on the day we had to drive to Riverside. Our coach, Professor Strenn, suggested all teams should go to Riverside one day early to avoid traffic, so we left a day early. Gabby drove our team, along with David, who is in Team Yellow. Before driving to Riverside, we were in the CS lab that morning busy printing out the rest of the cheat sheets. After everything was ready, we started driving from Santa Barbara to the south, all the way to Riverside. Rainy days made it harder for us to drive, with all the traffic in LA.

We arrived at Riverside around 5 p.m. We checked into the hotel, and we put our stuff in, then we went to a steakhouse in Downtown Riverside. Since the hotel is pretty close to the steakhouse, we all just decided to walk in the rain. I was talking to a few folks on the way there, about class, future plans, and evil AI. After arriving at the steakhouse, Masha and I decided to order the most expensive item on the menu (SBCC got our ahhh), and that steak was really freaking good. It was a really fun dinner I would say.

After the dinner, I decided to do 30 minutes of cardio in the hotel. After taking a quick shower, I met up with my teammates and we started doing Kattis problems (and Mario Kart thanks to David’s Switch) all the way until 1 a.m.

Day 2

The second day in Riverside was still cold, cloudy, and a little drizzly in the morning. We woke up around 7, and we had a really quick breakfast in the hotel. We checked out, and drove there to Riverside City College since the competition is there.

We walked from the parking lot to one of their computer labs. RCC is a beautiful college, with wide roads and massive architecture, kinda feels like a four-year university instead of a city college.

There were a few volunteers by the door, checking in, giving out T-shirts and giving out event badges. After all the contestants finished checking in, we moved to another bigger hal (I think it is their dining hall?) I saw a table for JetBrains where they're giving off the IDE stickers, which is kind of fun. That was the first moment that I felt like, wow, being a computer science major is actually a cool thing. When everyone settled down, there was this guy who gave a speech about ICPC. I was too nervous to lock-in to the speech because I kept thinking about the problems that we're going to solve – feeling both nervous and excited, until that guy literally brought up the 67 joke (still incredibly unserious but super funny).

Starter Problems

When the speech was done, that was time for some starter problems. Starter problems basically play a role in letting you get familiar with the environment, they don't actually count to your overall score. Lots of teams solved all four of the startup problems in an hour, but we just only solved one problem, which was kind of sad (we could’ve solved more). The fact that we only solved one made me really nervous about the actual competition. After that, we had lunch. I got a burrito and a few cans of Diet Coke, it was a really quick lunch.

Stomach not empty, time for the actual contest.

Actual Contest

We went into the same hall again for all the security checks. You don't get to bring in any kinds of electric devices. Backpacks are fine, but every electronic device has to be cleared out, no Apple Watch and Airpods etc. So we gave it to our coach. After all those checks, we were in the hall and waiting, waiting for the competition to start. It was the same 67 guy again, he just went into the hall and he was starting to have a Q&A session with all the contestants. There was one student I remembered really clearly, he was asking a lot of questions, and David said: “this guy is definitely gonna win”.

Q&A session ended and we all sat down in our assigned seats, waiting for everything to start. There were three envelopes under the keyboards, and inside was the ICPC problem set. At one point, volunteers started counting down from 10 to 1.

10, 9, 8, 7, 6, 5, 4, 3, 2, 1….

5-hour Countdown

And at zero, we opened the envelope. The five-hour countdown has officially started. I looked at the problems, and I found out that the first problem was pretty much the same as the problems that we did yesterday before we went to sleep. I suggested that I finish the first problem. So I started coding on the computer for that problem. The main idea of the problem was just a GPA calculator. Scanner, and using a few if loops to compare chars and output the actual GPA, piece of cake. I was coding with confidence and finished that in 30 minutes. I was actually hyped up until the code didn't pass the unit test. There was a bug.

Challenge

We started debugging it until Masha said: “why don't we just use Python?” And she starts rewriting the code on the computer on PyCharm. I was okay with that since we don’t have any clue, and there will be some time to look at other problems. I found problem 9 was pretty easy as well. So again, I was writing some ideas on the scratch paper and was doing the math for that problem. At the same time, my teammate tried on Python, but it also didn't run. Then I took over again, and I found she had misread the problem and missed some cases. Since I don't know python syntax that much, I started debugging my old code again.

When I was debugging it, adding and deleting stuff, Masha said: “Can I debug mine?” So, we were kind of doing that push and pull thing for a few rounds, and I said to myself that's not the most efficient way. Since this is a competition, we only have time to debug one code. I suggested we should debug mine because it has a structure already, it is not passing because there's just a few cases that we're not covering. We all agreed upon that, so we started debugging again. Gabby started doing that on the paper while I’m doing that on the computer, and she found out one of my loops isn't being updated after each iteration. We fixed it and submitted it and it passed. The first problem took us four hours to solve.

Time For The Second One

Literally right after the first one passed, we started the second one. I was still the main coder since I wrote all the ideas and structures on paper, I coded the whole thing. But again, there is a bug in the code. I think it was one of the objects that has not been updated, so every time we return a value from that, it's always returning zero. Then Gabby and Masha worked on another version in Python, still not working. We checked our loops, but since we have only 45 minutes left, we didn't have too much time to debug. We still couldn't figure out what had happened to that object. Time is up, we ended up only being able to solve one.

Aftermath

After the competition, they had pizzas from Domino's. I had a few slices and some soda, and we were talking about how intense the competition was, asking about how other teams did. Overall, we were pretty proud of what we solved. We were happy that we beat Caltech (one of their teams), which solved zero problems.

We didn't participate in the awarding session, so we just left early. It was still raining really hard and was barely visible on the way to Santa Barbara. We stopped by Pasadena to get some food,and got some ice cream from Whole Foods. It was fun with Gabby, Masha, and David. We all were chatting about everything, doing Karaoke in the car while driving back. By the time that I got back home, it was almost 12 am.

What I Learned From This Experience?

That was my first ICPC, and a really fun experience. I'm super grateful for this chance which made me exposed to the real coding competition where it's intense and stressful, and seeing all the four-year university students who solved 11 and 12 problems out of 13 problems were really shocking to me. I feel really accomplished, and most importantly, I felt really proud to be a computer science major student, that's actually a cool thing because you are actually using your coding skills to solve some real-world problems.

I learned a few things through this experience. First, being one of the best coders at SBCC and competing for ICPC doesn't mean being the best in the SoCal region. There is always someone better than you. Second, I learned that extreme competition will magnify all the anxiety. You'll be extremely anxious under pressure, and you'll be scared, you will panic. But all you have to do, and can do, is to calm down and think of the problems you need to solve. Third, I learned teamwork actually makes dreams work. In competitions like this, collaboration is key. In five hours, there is no time to let everyone give out their own solution. So plan ahead, stick to one of the people's solutions and make it perfect. Lastly, I learned that if you want something, you have to try your best to earn it. Don’t let your fear scare you, just do it. If you wanna be in the team, just apply. It’s that easy. Opportunities don't come out of nothing, you have to catch them.

The only thing I regret about this competition is that we didn't get to solve many problems. Even though we were satisfied that we just solved one problem at least, I still feel like we could solve more. If there will be a chance for another ICPC, I would definitely work harder to solve more.