Competitive Programming in the Era of AI

m-novikov1 pts0 comments

Competitive Programming in the Era of AI | Blog · vibhaas.net<br>Post<br>Cancel<br>Competitive Programming in the Era of AI<br>Contents Competitive Programming in the Era of AI

Read (and comment) about the post on Codeforces blog: https://codeforces.com/blog/entry/155052.<br>Picture this. You’ve had a draining week at university or at work. You’re exhausted, and you need a break. Most people would play a few video games, grab a few beers with their friends, or just sleep. But you have the (mis?)-fortune of being addicted to this weird, aesthetically questionable website called Codeforces (or AtCoder, or whatever your favorite OJ is).<br>You check the list of upcoming contests, and you’re in luck. “Nice,” you think to yourself, “two rated contests back to back!” This is going to allow you to farm some rating! That sweet, juicy, delicious rating. Maybe it’s because the rest of your life is so dry that you get your weekly fill of validation (or disappointment) from these random internet points. Still, at least you’re being productive. You want to get out of this Specialist rut you’ve been stuck in and into Expert. This is an academic goal. Or so you tell yourself. The truth is, you’re simply addicted to the adrenaline rush that contests give you. It was never about being productive.<br>So, the contest time arrives. You watch the counter slowly tick down… and it’s on! You’re frantically reading the first question. You discard the fluff and your eyes narrow in on the parts that look mathematical… Okay, you need to know what the question is asking… You locate a line that looks important… read it. Alright! The logic was pretty clear in your mind. First question. Obviously easy. Everyone’s going to get it. Only speed matters, and not getting a wrong answer penalty due to rushing. You quickly code it out, hit the submit button. The server is stuck, because everyone is submitting. After some time, AC. Whew. You check the standings. You submitted just in 2 minutes. Quick enough. You have a small lead. You don’t waste any more time, switching to the second question. The fun is only beginning.<br>And so it goes. The contest is two hours long. One hour in, and you’ve solved three questions, no penalties. Pretty sweet. Should be enough for some positive rating gain. And then you move on to the fourth, but you’re stuck. It’s pretty hard. Probably DP. You hate DP which is non-standard. You probably should practice your DP. One of these days.<br>Anyways, you watch the contest go on. You know from experience most people will also be stuck, and since you were quick, your rank should be good.<br>That doesn’t happen. The leaderboard keeps climbing. And climbing. You stare at the fourth question, frustrated. Almost 3,000 people have solved it by now. That isn’t going to give you any rating. What? Are you just stupid? The question stares back at you, its face cold and inscrutable. In desperation, you try a few greedy approaches. They fail. Two WAs.<br>The contest ends. You ended up with a -30 delta. You’re a bit numb. This was a good contest. That was the worst part. Everything went right. On a typical day, you wouldn’t have done this well.<br>You know ratings shouldn’t matter. Random internet points. But it still stings. You don’t like losing. Maybe you’re not cut out for this. Why are you still doing this anyway? You wanted to attend the ICPC Regionals. But you can barely maintain a stable specialist rank.<br>You’re frustrated. You look at the standings. So many grays and greens above you. It’s disappointing. This is when competitive programming loses some of the magic that made it so special to you.<br>You don’t up-solve that question you were stuck at. You don’t register for the next contest. For the first time in a long while, you wonder if you’re done.<br>Introduction<br>Over the past two years, competitive programming has (not so) quietly entered a new era. With the release of Large Language Models which can solve an increasing fraction of CP problems, getting an AC can be as simple as pasting the question statement into your favorite model, and pasting back (without even looking at the code) the response.<br>It’s also clear that an increasing number of participants are relying on AI tools for their contests, either for the entire contest (which I jokingly like to call “LLM-Zombies”) or parts where they get stuck (the more skilled cheaters). We’ll just use the term “unfair player” to refer to them, since such behavior is explicitly forbidden by the rules. Unfair players have a disastrous effect on the leaderboard, since Codeforces uses a rating system which works based on ranking and how many users solved a problem, this deflates the ratings of problems as well as genuine participants. This blog by Christine- estimates that “The rating deflation for legitimate participants is around 150-190 rating points”.<br>On a platform where rating points of just 200 can completely change your rank, this is a huge difference. Worse, this risks driving away legitimate participants and...

rating question contest competitive programming stuck

Related Articles