The most problems on Codeforces are "classic input-output" problems in which you have to write an entire program: read the input and write the answer. Also, there are "interactive" problems in which you have to interact with a jury's program. But Codeforces supports some other types of problems: problems with graders and output-only problems.
You can test an output-only problem and a problem with grader in this mashup.
Problems with graders
In such problems, you (a participant) have to implement not the entire program but only some interface or function described in the problem's statement. For example. you may be asked to implement function
f(a: int, b: int, c: int) -> int in Python or
int f(int a, int b, int c) in C++. Only Python and C++ are supported for now for such problems.
In such problems, you (participant) have to send only a zip-file with outputs on each test (or only on a subset of tests). The structure of the zip file must be following:
archive-name.zip | |- 01.out | |- 02.out | |- 03.out ...
I.e. zip-file must contain text files with the outputs named like
Commonly, each problem could be marked as output-only, but it's recommended to publish tests using the "Problem materials" section in Polygon (see this post to learn more).