soullless's blog

By soullless, 3 months ago, translation, In English

1. What exactly is the problem

During rounds, a specific pattern has appeared: a participant gets ready-made code from an LLM and simply submits it, almost without understanding it. This is not always caught by plagiarism: a person can rename variables, swap some parts of the code.

2. The idea

Xeppelin — an open-source tool, originally made for ICPC, which:

  • is launched locally before the contest
  • logs file changes in the working directory
  • stores a development timeline (when and how the code changed)
  • does not record the screen, keyboard, network, or tabs
  • after the contest builds a visualization of activity

This is not my tool, but you can find it here

3. What exactly is proposed for Codeforces (implementation, not an idea)

The proposal is to use Xeppelin as an external source of behavioral data, without interfering with CF infrastructure. Workflow:

  1. The participant launches Xeppelin before the round

  2. Solves problems as usual (locally, in an IDE)

  3. After the round Xeppelin produces:

  • a file changes log
  • an activity timeline

This log can be automatically linked with CF submissions (by contestId + handle)

CF at the same time:

  • does not change the submission process
  • does not receive data in real time
  • does not require anything complex and global except installing 1 piece of software and linking it with codeforces.

4. What data is obtained

From Xeppelin, clear and simple metrics are available:

  • number of file changes before AC
  • sizes of individual changes
  • active work time vs idle time
  • whether the code was written gradually or “in one chunk”
  • whether the same pattern repeats across multiple problems

These are process metadata, not screen content and not user input.

5. Why this works well specifically against cheaters:

A typical pattern of copying or cheating with an LLM-solution:

  • long idle period
  • one large file update
  • almost no edits
  • immediate AC

This pattern:

  • rarely occurs for people who actually write code
  • is clearly visible exactly in the file timeline
  • is hard to fake without actually rewriting the solution

6. How this can be used in practice (without bans)

Xeppelin is not proof, but a signal. Realistic use cases:

  • additional input for post-contest analysis
  • a basis for provisional rating in clearly anomalous cases
  • a tool for moderators/authors, not automatic punishment

7. Why this is safe for CF

  • no proctoring
  • no interference with submissions
  • no mandatory installations
  • no real-time load

Xeppelin works completely outside, CF receives data after the contest or only upon request.

8. Limitation and compromise solution

Limitation

An obvious downside of this approach is that it is impossible and unnecessary to cover 100% of participants. Some people will not be able or willing to use an external logger (devices, installation policy, personal reasons).

Trying to make such software mandatory for all rated rounds is indeed too strict and may harm Codeforces accessibility.

Compromise solution (without changing the core CF system)

Instead, the following option is proposed:

  • The rating remains the same as now
  • Each result gets a status:
  • Verified — if the participant attached an activity log (Xeppelin)

  • Unverified — normal participation, without logs
  • This is not a separate rating and not a “second league”

  • This is an additional layer of trust, similar in spirit to unofficial standings or verified badges

In practice, this gives:

  • the ability to filter the leaderboard by Verified
  • priority of trust for verified results
  • fewer provisional checks for verified participants

At the same time:

  • nobody loses access to rating
  • the contest format does not break
  • honest participants get a clear incentive to confirm the process

9. TL;DR

There is already an existing tool (Xeppelin) that logs the development process without surveillance. It can be directly linked to CF rounds and used as an additional signal against LLM-solution copy-paste — without bans and without breaking the platform.

Full text and comments »

  • Vote: I like it
  • +392
  • Vote: I do not like it

By soullless, history, 9 months ago, In English

2126A - Only One Digit

Idea: soullless

Tutorial
Solution

2126B - No Casino in the Mountains

Idea: soullless

Tutorial
Solution

2126C - I Will Definitely Make It

Idea: soullless

Tutorial
Solution

2126D - This Is the Last Time

Idea: soullless

Tutorial
Solution

2126E - G-C-D, Unlucky!

Idea: Away_in_the_heavens

Tutorial
Solution

2126F - 1-1-1, Free Tree!

Idea: soullless

Tutorial
Solution

2126G1 - Big Wins! (easy version)

Idea: soullless

Tutorial
Solution

2126G2 - Big Wins! (hard version)

Idea: soullless

Tutorial
Solution

Full text and comments »

  • Vote: I like it
  • +116
  • Vote: I do not like it

By soullless, history, 9 months ago, translation, In English

Almaty Code Cup x Qazaq Programming Contest — one of the prestigious ICPC-style programming competition for students in grades 7–11(12). Created by former and current members of the Qazaq national informatics team, ACC x QPC is back again in 2025! This is our third edition — and now on an international scale!

Prizes & Awards:

Take part and compete for:

  • Cash prizes — total prize pool starting from 3000+ USD;

  • Tuition grants and discounts at top technical universities;

  • A chance to stand out and take a step toward a successful future!

How will ACC x QPC 2025 run?

  • Qualifier: online with proctoring, hosted on codeforces.com (details coming soon);

  • Final round: top 32 teams advance to the on-site round in Almaty. Accommodation and meals will be fully provided by the organizers.

Registration is now open!

Full text and comments »

  • Vote: I like it
  • +109
  • Vote: I do not like it

By soullless, history, 9 months ago, translation, In English

Hi cheaters and people!

Full text and comments »

  • Vote: I like it
  • +181
  • Vote: I do not like it

By soullless, history, 9 months ago, translation, In English

Hello, Codeforces!

I am very excited to invite you to our contest Codeforces Round 1037 (Div. 3), which starts on Jul/17/2025 17:35 (Moscow time). You will be given 7 problems and 2 hours and 15 minutes to solve them.

The problems were authored by me, __rose, Pishka12, Chalishkan and I_HATE_MD_DM to solve and alter them.

The round will be hosted by the rules of educational rounds (extended ICPC). Thus, all solutions will be judged on preliminary tests during the round, and after the round, there will be a 12-hour phase of open hacks. After the open hack phase, all accepted solutions will be rejudged on successful hacks. Also, note that there is no score distribution — rank will be determined by number of problems solved, followed by penalty; wrong submissions will incur the usual penalty of 10 minutes, following the rules of educational rounds.

Remember that only the trusted participants of the third division will be included in the official standings table. As it is written by link, this is a compulsory measure for combating unsporting behavior. To qualify as a trusted participant of the third division, you must:

  • take part in at least five rated rounds (and solve at least one problem in each of them)
  • do not have a point of 1900 or higher in the rating.

Regardless of whether you are a trusted participant of the third division or not, if your rating is less than 1600, then the round will be rated for you.

We would like to thank:

GL HF!

Editoral is out!:

Also I would like to show you the beauty of our country's nature with the stunning backdrop of tourist Peak (3965m)!

Full text and comments »

  • Vote: I like it
  • +525
  • Vote: I do not like it

By soullless, history, 10 months ago, translation, In English

Hey everyone! Today, after another one of my runs, I started wondering: how do workouts before contests actually affect your thinking?

When you hit the gym, go for a run, or play football — you're burning glycogen. That’s a form of stored energy your body makes from carbs. It’s stored in your muscles and liver.

Muscle glycogen is used for movement.

Liver glycogen keeps your blood sugar stable and literally feeds your brain.

During physical activity, you burn both. Your muscles use their own fuel, and your liver starts dumping sugar into your blood to keep your brain from shutting down. So yeah — doing a CF round two hours after playing football is a terrible idea.

If you burned all your glycogen yesterday, didn’t eat well, and didn’t sleep enough — your brain the next day runs on fumes. You’ll feel it hard if you played football right before the round: you sit down to code, and your head’s just fog. Easy problems feel heavy, and on the hard ones you’re just staring like it’s your first time seeing a for loop.

Here are the simple rules I stick to:

  1. No heavy physical activity the day before Forget the “let’s go kick a ball real quick.” You’ll just sit there in the contest with fish eyes, chasing bugs in your own code. Your body needs time to recover that energy.
  2. Eat real food (not tea and cookies) Your body needs carbs — pasta, rice, potatoes, oatmeal. Don’t chug soda and snack on candy like it’s fuel. Slow carbs = stable energy through the whole contest.

That’s it. Sleep well, eat well, don’t fry your body the day before — and go solve at full power.

Good luck in your contests and olympiads! :)

P.S. I recently wrote a motivational/educational book where I shared my experience and dropped a bunch of practical advice — both for improvement and for getting real results.

You can find the book h-e-e-e-e-e-e-e-e-re

Full text and comments »

  • Vote: I like it
  • +111
  • Vote: I do not like it

By soullless, history, 12 months ago, translation, In English

Hey everyone! This year, IOI 2025 will take place in Bolivia — super exciting! Who will be representing your country at this legendary competition?

Here's our team (Kazakhstan):

Wansur (second time at IOI) (1 attempt left)

ahyeon (second time at IOI) (0 attempt left)

Away_in_the_heavens (first time at IOI) (2 attempts left)

WansurMyKing667 (first time at IOI) (1 attempt left)

What about your team? Share it in the comments — would be really cool to see who’s going and maybe even spot some familiar names!

Full text and comments »

  • Vote: I like it
  • +341
  • Vote: I do not like it

By soullless, history, 13 months ago, translation, In English

My friend Away_in_the_heavens sent me a screenshot that left me completely shocked.

I have never seen anything like this on the platform before:

The image shows the standings of today’s round.

For comparison, here's what standings typically looked like across 100 previous contests:

Of course, incidents of unfair play have happened before. However, judging by today’s round, the number of cheaters has increased tenfold, if not a hundredfold. And the reason is clear — the appearance of tools like ChatGPT o1 or ChatGPT mini-high-3, which are apparently capable of solving problems up to ~3000 rating in just a few minutes.

As a result, the round turns into a minigame for cheaters: who can type faster or debug ChatGPT's solution more efficiently.

In my opinion, the current state of affairs calls for action. Perhaps it's time to reconsider the rating system or implement new mechanisms to address such violations.

I’d love to hear the thoughts of both the Codeforces team and veteran users who have been on the platform for many years.

Full text and comments »

  • Vote: I like it
  • +520
  • Vote: I do not like it

By soullless, history, 13 months ago, In English

Hey everyone! I’m excited to share something important with you.

Over the past two years, I’ve walked a long road in competitive programming — through thousands of problems, hundreds of contests, ups and downs, burnout, and bouncing back. And now, I’ve written a book that captures all of that experience.

But this isn’t just a guide. It’s a motivational and educational book — for high school students, university students, and anyone who wants to grow stronger in olympiad programming. Inside, you’ll find:

the raw truth about burnout and how to deal with it,

real strategies for consistent growth,

a personal story — from the very first steps to winning gold,

and most importantly, ideas that will help you reach the top — and stay there.

This book is for everyone: beginners and advanced alike.

Download the PDF: https://drive.google.com/drive/folders/1NJ5Qx5ci7GrQeMKZhDakVHqaqg1CdNEg

I’ll be truly grateful if you read it and share your thoughts. This isn’t a textbook — it’s a conversation. From one olympiad programmer — to everyone walking the same path.

See you at the top of the rankings.

Full text and comments »

  • Vote: I like it
  • +729
  • Vote: I do not like it

By soullless, history, 13 months ago, In English

Where is the April fool contest? The contest was held every year until 2024, will it be this year?

Full text and comments »

  • Vote: I like it
  • +237
  • Vote: I do not like it

By soullless, 14 months ago, In English

Does anyone know why nor has deleted all his blogs? A lot of math blogs were deleted, we have lost a lot of tricks.

Full text and comments »

  • Vote: I like it
  • +115
  • Vote: I do not like it

By soullless, 19 months ago, translation, In English

Good Day Codeforces!

Me, Wansur and Chalishkan are happy to invite you to take part in Codeforces Round 973 (Div. 2), which starts on Sep/20/2024 17:35 (Moscow time). You will be given 6 problems and 2 hours to solve them. One problem is divided into two subtasks.

The round will be rated for all participants with a rating lower than 2100.

The problems were authored by me, Wansur and Chalishkan to solve and alter them.

We would like to thank:

Score Distribution: 500 — 750 — 1250 — 2000 — 2500 — (2000 + 2000)

Good luck!

UPD1: Congrats to the winners!

div. 2:

  1. EmmaXII

  2. hxano

  3. Muelsyse_sep006

  4. Hexagons

  5. Trumling_hasnotime

div. 1 + div. 2:

  1. maspy

  2. arvindf232

  3. Brovko

  4. aryanc403

  5. E869120

UPD2: The Editorial is out!

It is our team on EJOI 2024 4-th from left is me, 5-th from left is Wansur

We are also very glad that ICPC 2024 will be in Astana, and we wish all participants a good tour!

Full text and comments »

  • Vote: I like it
  • +627
  • Vote: I do not like it