Now virtually everyone is using AI in their lives, I want to express my opinion on the usage of AI-assisted coding, especially in codeforces contests. This is very subjective, so do not take this very seriously...
What you can use AI for:
Small snippets of code, such as prime number checker or O(1) function to check if a number is a power of 2 (As long as the question doesn't actually ask you to implement these).
Summarising/translating problems, but if you do this add this to your prompt: 'Do not explain the thought process or give any hints/spoilers'. A file template for problems, especially for c++/c e.g.:
#include <iostream>
#include <vector>
#include <cmath>
#include <algorithm>
using namespace std;
int main() {
ios_base::sync_with_stdio(false);
cin.tie(NULL);
int t;
cin >> t;
while (t--) {
int n;
cin >> n;
}
return 0;
}
What you can't use AI for:
Writing out the whole code
Giving you hints, pseudocode, thought process etc.
Brainstorming. Writing large algorithmic parts.
A gray area:
If you already have a very clear thought process/psuedocode, then it's often very tempting to give it to AI and let it do the actual coding, as you've already done the hard work. After all, coding something out in tough syntactical languages like c++/c is a bit of a waste of time — you don't really use your brain. However, this gives you a faster time, as AI is faster than humans, and also it sometimes might automatically correct your mistakes. All of these factors are unfair, and the anti-AI detection doesn't know who did all the braining and hard work. So this is a very debatable area...








Auto comment: topic has been updated by bwadelyyyy (previous revision, new revision, compare).
Auto comment: topic has been updated by bwadelyyyy (previous revision, new revision, compare).
"If you already have a very clear thought process/pseudocode, then it's often very tempting to give it to AI and let it do the actual coding, as you've already done the hard work. After all, coding something out in tough syntactical languages like C++/C is a bit of a waste of time — you don't really use your brain."
This is a very weak point to me. Thinking the solution is one thing, but writing it out as a code is completely different. For instance, edge cases exist. You can't just write the solution you thought of recklessly. Letting the AI do the thing is not making you better at managing these rare cases people often overlook.
if you have a good pseudocode, then you probably wont fall for edge cases. if you fall for edge cases, then its not good pseudocode. writing it out as code is time-consuming and boring, but on the other hand using AI to write out the whole code is also kinda cheating
this is why its a gray area
A rough guide to usage of AI
Hope this helps!
A rough guide to usage of AI
AI Banned Contest
In fact, ABC only manually reviews the code of a small number of competitors (typically those ranked relatively high at certain moments during the competition), and only those with extremely obvious cheating behaviors will be banned. Therefore, the term "AI Banned Contest" is inappropriate here
This is actually not allowed by Codeforces rules, if you look at this blog: https://mirror.codeforces.com/blog/entry/133941
You might say, "Writing a prime number checker, for instance, isn't part of the problem, so it is fine." However, the blog states, "You may not input the problem statement, its summary, any excerpt, or a sub-problem into an AI-based system to receive ready-made code or natural language descriptions of the solution." A prime number checker is a sub-problem that can lead to the actual solution to a problem.
I also believe that the area you called "a grey area" is not a grey area at all. I believe it is not allowed at all by these rules.
i totally get that this is just an opinion-based guide, but its definitely not something that i'd go by, and would not recommend anyone to go by in an official competition (unless you want to get disqualified lol).
that's because i'm pretty sure that everything outlined here, although it has arguably sound logic and seems pretty justifiable in real-world applications, is prohibited in most, or even all, competitions. for very valid reasons, i might add.
i'd also like to add that i'm not against generative AI in this case; it could make for a great learning tool, especially in the dynamic field of informatics, even though it's not something i personally use!
nevertheless, the usage of generative AI in general is a pretty grey area, not just in informatics contests, so i'd err on the side of caution and try to avoid AI for informatics in general, even when you think it's pretty trivial: most platforms run a pretty strict program!
(again this is just my own opinion pls don't slime me out for it </3)
anyways congrats bradders for ur first cf blog!!!
dawg just write the code yourself its not that deep
"Using AI to generate simple boilerplate code (e.g., input/output functions) is allowed." try saying a prime number checker is not boilerplate code, a lot of ppl have a whole file of boilerplate functions generated by AI
"Relying on AI to generate algorithmic logic or the key solution is strictly prohibited." well if you have pseudocode, then algorithmic logic is not generated by AI
At this point, you are trying to evade the rules given by Mike and Codeforces. Prime number checker is NOT simple boilerplate code. He also only allows Code Completion tools for AI-generated code.
Creating code BEFORE a contest is fine. However, using AI-written code that was created DURING the contest is not allowed.
When Mike says sub-problem, he means A LOT. This can also mean actually creating the code, even if it's your idea. Stop trying to find loopholes. Rules are rules.
This is the dumbest blog I've ever seen.