Codeforces Round #741. Where the entertainment took the author of the contest.

Revision en1, by Wind_Eagle, 2021-09-28 21:58:04

Hello, Codeforces! A month ago I wrote my blog about cheaters. Under that blog, a number of suggestions have accumulated, and I have accumulated a number of interesting ideas that could be applied to sabotage a group of cheaters.

It's worth noting that I've often seen comments along the lines of:

Pictures

.

Well, doing what Ari suggested wasn't really what I wanted to do, but it was worth checking out what would happen if the wrong decisions were sent. I asked a user what would happen if I sent the wrong solutions to cheaters. He told me that a friend of his had done this before and that he was quickly debunked.

I wondered whether I could cheat without getting caught. But for this test, I had to do something. As you may remember from the last blog, I had already been featured in various cheater groups. So I needed an assistant to correspond with cheaters instead of me. That helper turned out to be Dmi34. Thanks a lot to him, without him this blog wouldn't have come out! We sat on Discord and I told him what to do. He also helped me with writing code, but more on that later. By the way, don't scold him for his knowledge of English. His first language is Russian, after all.

My first idea was to create a group on KF and invite all cheaters there. Then I decided, that it's not a good idea. That's because it's almost impossible to get cheaters into a group on KF because they would probably realize that it would be a bad idea to leak their nickname. Yes, and how to lure them there? They obviously don't need training and training tasks.

So, I decided to stop at dropping the wrong decisions. Since I had been told that it could not be done, I wondered: why could it not be done? As it seemed to me, I found the answer. It was that the cheaters couldn't be sure that they were being tossed the right solution. So we did the following.

Dmi34 started to turn in the problems in the round (don't worry, he's not a ranked participant since he's a master candidate), he turned in problems A, B, D and E1. After that, we decided to do wrong solutions to problems D and E2. But we had to do it very carefully, because it was impossible to give them even the slightest hint about the solution. Then we did the following: I wrote the wrong solution for D, which also takes TL (although cheaters often don't understand the difference between the $$$O(n \cdot log(n))$$$ and $$$O(n^2)$$$ solutions). And Dmi34 wrote a brute-force solution on E2, which obviously didn't work.

Links to these codes, they will help you catch cheaters:

.

So, Dmi34 wrote in the chat room:

Pictures

.

And a wave of cheaters went down! Everyone wanted to know the solutions! We made them wait for a while, and then we started sending them these solutions after all. Here are the funniest and most interesting screenshots of their requests.

Translated with www.DeepL.com/Translator (free version)

Картинки

Нам даже написали два человека, которые просили помочь им со вступительными тестами в компанию! Покажу скрины с одним из них.

Картинки

Вскоре они начали что-то подозревать, но мы развеяли их сомнения скриншотом: прямоугольник зеленый, у меня решение работает, ищите ошибку у себя.

Картинки

Кстати, читеры довольно долго отвечали. По-видимому, это связано с тем, что они меняли коды, чтобы не попасть под антиплагиат. Впрочем, мы все равно заставили их скинуть наш код без изменений:

Картинка

Вскоре какой-то читер написал, что у него есть решение на задачу C. Мы написали ему, что хотим его получить, но он нам не ответил. Вскоре мы еще узнаем, сколько стоит решение на задачу.

Также нам написал какой-то читер, с просьбой обменять решение задачи С на задачу Е2. К моему глубочайшему стыду (сарказм), мы согласились, и скинули ему неверный код, а взамен получили его код.

Картинки

Вот его решение. Кстати, судя по всему, оно не работает:

Решение читера

Вдоволь позабавившись, мы решили признаться, что их просто троллили, и скинули им забавные сообщения. Я-то думал, что они отреагируют на это, но почти все спокойно это перенесли. Удивительное спокойствие!

Картинка

Что самое смешное, Dmi34 продолжил получать сообщения, которые просят его скинуть решения! Неужели до них не дошло даже после сообщения о том, что их троллят? Такое ощущение, что они просто не читают беседу!

Самый забавный читер, которого мы нашли:

Картинка

Дальше я лично вступил в другую группу с читерами. Не хочу делать им рекламу, но их админ написал комментарий под моим прошлым блогом, можете посмотреть, кому интересно. К моему удивлению, они... Реально запретили переписываться во время контеста! Как только я вступил, бот написал сообщение о том, что Wind_Eagle вступил в чат... И мне тут же (!) написал какой-то читер, который предложил мне купить решение на его задачу С. Я спросил, сколько стоит решение. Итак, сейчас, не глядя в спойлер, попробуйте угадать, сколько оно стоит, а потом загляните и проверьте себя.

Ответ

Я поторговался для приличия. Когда он сказал, что готов продать, я хотел было написать, что мне оно не нужно, потому что я якобы только что придумал решение на задачу. Но он скинул мне номер своего кошелька... Показывать я его не буду, я его не запомнил и его номер удалил, потому что это уже перебор. Впрочем, и самого это читера я кинул в черный список, чтобы он мне больше не писал.

Картинка

Кстати, к слову о стоимости. Помните, что в той группе просили помочь с тестом? Так вот, помощь на таком тесте для приема в компанию стоит мистические <<200>> (подозреваю, что рупий).

Картинка

Теперь стоит рассказать о моей переписке с админом этой группы. Впрочем, зачем рассказывать, почитайте сами.

Картинки

Итак, что же можно извлечь из этого блога? Во-первых, любители ловить читеров — ваша очередь! Вы можете посмотреть коды, которые я им послал, и, если хотите, можете искать читеров. Во-вторых, я показал, сколько стоит решение и насколько активно они продаются. Ну и в-третьих, я показал, что и тесты для вступления в компанию тоже покупаются и продаются, что меня особенно разочаровало.

Какой же из всего этого можно сделать вывод? А такой. Читерство — это не просто обман, это еще и бизнес! Так что, как и любой полу-легальный бизнес, его крайне сложно искоренить.

P.S. Дорогие читеры, простите меня пожалуйста за причиненные неудобства! Я не хотел сильно навредить вам, в конце-концов, рейтинг вы вернете за пару контестов. Все наши неправильные решения вы получили максимально быстро и бесплатно. Если я причинил вам какие-то неудобства, простите меня пожалуйста! Я больше так не буду!

Tags codeforces, round, 741, cheaters

History

 
 
 
 
Revisions
 
 
  Rev. Lang. By When Δ Comment
ru11 Russian Wind_Eagle 2021-09-29 00:13:57 0 (опубликовано)
en9 English Wind_Eagle 2021-09-29 00:13:37 42
ru10 Russian Wind_Eagle 2021-09-29 00:13:19 43 (сохранено в черновиках)
ru9 Russian Wind_Eagle 2021-09-28 22:17:56 0 (опубликовано)
en8 English Wind_Eagle 2021-09-28 22:17:48 0 (published)
en7 English Wind_Eagle 2021-09-28 22:17:15 66 Tiny change: ' it again!' -> ' it again!\n\nP.P.S. Thanks [user:gepardo] for checking the blog.'
ru8 Russian Wind_Eagle 2021-09-28 22:16:52 63 Мелкая правка: 'к не буду!' -> 'к не буду!\n\nP.P.S. Спасибо [user:gepardo] за проверку блога.'
en6 English Wind_Eagle 2021-09-28 22:11:29 44
ru7 Russian Wind_Eagle 2021-09-28 22:11:16 12
en5 English Wind_Eagle 2021-09-28 22:11:05 12 Tiny change: '/i.ibb.co/f1zbdR4/cheat1.pn' -> '/i.ibb.co/r65zfTL/cheat1.pn'
en4 English Wind_Eagle 2021-09-28 22:08:35 322
en3 English Wind_Eagle 2021-09-28 22:01:05 6
en2 English Wind_Eagle 2021-09-28 22:00:24 10553
en1 English Wind_Eagle 2021-09-28 21:58:04 10108 Initial revision for English translation (saved to drafts)
ru6 Russian Wind_Eagle 2021-09-28 21:55:41 65
ru5 Russian Wind_Eagle 2021-09-28 21:53:47 2 Мелкая правка: '"0"></a>\n<a href=' -> '"0"></a>\n\n<a href='
ru4 Russian Wind_Eagle 2021-09-28 21:52:58 985
ru3 Russian Wind_Eagle 2021-09-28 21:41:45 48
ru2 Russian Wind_Eagle 2021-09-28 21:41:00 48
ru1 Russian Wind_Eagle 2021-09-28 21:39:50 9302 Первая редакция (сохранено в черновиках)