General Information for the 2016 ECNA Regional Programming Contest

Note: This is a draft document and it is subject to change.
See the changelog at the bottom of this page for more info.

Input and Output Specifications

The following represents the normal restrictions to input and output. If exceptions are to be made, they will be explicitly stated in the Input or Output sections of the problem descriptions.

A note on the problem descriptions

Most problems will include a sample instance in order to describe the problem and demonstrate what is being asked. Sometimes, but not always, this sample is included in the Sample Input, that is always given at the end of the problem description, along with the corresponding Sample Output. Do not assume that the Sample Input includes the sample instance discussed in the problem.

Programming Languages

The compilers used are gcc/g++ 5.4.0 and OpenJDK 1.8.0_91. All standard C/C++ libraries (including STL) and Java API are available, except for those that are deemed dangerous by contest officials (e.g., that might generate a security violation).

In addition, contestants may submit solutions in Python. However, there is no guarantee that judges will have any Python solutions, nor is there a guarantee that any given problem will be amenable to a solution in Python. Python 2 version 2.7.12 and Python 3 version 3.5.2 are available.

Note: In C++ your "main" function must have the return type int. If you use "void main()" your program will not compile.

Languages and Judging

There are three scripts – compilegcc, compileg++ and compilejava – that are available for compiling your programs. The judges will use these scripts for judging submissions. Please use these scripts instead of running the compilers directly; this will ensure that both you and the judges are compiling with the same language settings.

Resource Limits

Resource limits – CPU time and memory space – will be specified for each problem in the problem's specifications.

Judges' Responses

Each submission will receive one of the following responses.

See Judgments for more information on judgments.

Problems Involving Floating-Point Precision

This part is being revised and information regarding floating-point values will be available here soon. A general announcement will be made when this information is available.


The contest environment this year is based on Ubuntu 16.04. As such, all of the standard UNIX utilities (ls, mv, cp, etc.) are available.

An image suitable for copying onto a USB drive will be available soon.

Eclipse 4.5.1 with CDT 8.8.0 is available as an IDE


2 Nov 2014 – Added section on Languages and Judging

24 Aug 2015 – Added Python with caveat to languages

2 Sep 2016 – Revised information to reflect use of Kattis