How to Submit

There are two ways of submitting your code: using the submit form or the submit client.

The Online Editor

If you are logged in and navigate to a problem you want to solve, you can use the code editor to write code in the browser or upload code from your computer. The form supports submitting multiple files; to do this you simply select all the files you want to submit in the file chooser dialog.

The Submit Client

Using the submit client requires a bit more setup work, but once this is done it is much more convenient to use than the online editor.

Please note that the submit client is provided as-is and we cannot guarantee that it will work on your system. It is a simple program that automatically (using a configuration file) logs in to the web page and uses the submit page.

Downloading a configuration file and client

Before running the submission client, you need to download a configuration file. This file should be placed in your home directory, or in the same directory as submit.py, and be called .kattisrc. You also need to download the client. To run the client, you need Python 3 installed on your machine.

Dependencies

The submit client depends on Python 3 and the requests and lxml libraries.

Running the client

The easiest way to run the client is if you have name your source code to problemid.suffix. Let's assume you're solving the problem Hello World (with problem id "hello") and that your java solution is in the file Hello.java. Then you can simply run submit.py Hello.java and the client will make the correct guesses. You will always be prompted before a submission is sent.

More advanced options

The submit client supports more advanced options as well (such as multi-file submissions or overriding the default problem, mainclass, or language guess). These are explained in the Submit Client Documentation