2021 UCF Local Programming Contest


This year's contest will involve multiple rounds!  The first two will be online only and the last is intended to be held in-person for those that qualify.

If you have trouble logging in or some other site-related issues on the day of the online rounds, please reach out to us by e-mail at This email address is being protected from spambots. You need JavaScript enabled to view it. or via Chrome to the public message system at https://tlk.io/ucfprogteam

The contest will consist of three rounds held as follows:

  • Practice Orientation Round (aka "Practice Local Contest").  This will take place online Saturday, August 28, 2021 from 2:00-5:30pm ET.  An old set of problems will be posed, and this is an opportunity for contestants and the judges to test the system.  First time competitors can see how the contest will work!  The judges will be online to answer clarifications and address any system issues during this time. 

    In addition, the practice orientation round will remain in an "extended open" state until Wednesday, September 1, 2021 at 11:59pm ET.  This allows you to continue to submit (and receive automated responses from the system) and gives late comers an opportunity to try the system.  However, the score will not be updated, and while the judges will monitor the site it will not be on a 24/7 basis.

    Attendance in this round is not required but is highly encouraged!

  • Local Programming Contest Qualifying Round.  This round will take place also online on Saturday, September 4, 2021 from 2:00-5:30pm ET.  This is the first official round where the standings count!  A completely new problem set will be posed to the contestants in this round.

    Based on the results, the coaches will advance some contestants (roughly the top 70 on the scoreboard plus returning varsity) to the Final Round. 


  • Local Programming Contest Final Round.  This round will take place in-person (planned) on Saturday, September 11, 2021 from 10:00am-7:00pm ET. Note that the Final Round is five hours long, plus we will have a contest rehearsal/practice, lunch, and an award ceremonyThis round is limited to those who advanced from the Qualifying Round.  Again, a completely new set will be posed.

    Based on the results of this contest, the coaches will select the team members for the Varsity and Junior Varsity squads of the UCF Programming Team for the 2021-2022 year.  Note that these may be finalized after a few team practices and/or interviews with individuals

  • FINAL ROUND SCHEDULE
    TimeActivityLocation
    10:00 AM   Check-in   ENG2 Atrium
    10:15 AM   Announcements   ENG2 Room 102
    10:30 AM   Contest Rehearsal   ENG2 Room 201 (Testing Center)
    11:30 AM   Lunch   63 South (Ferrell Commons)
    12:30 PM   Contest   ENG2 Room 201 (Testing Center)
    5:30 PM   Award Ceremony   ENG2 Room 102

If you have any questions, feel free to contact Dr. Orooji at (407) 823-5660 or by using our contact form
 
You may also download an announcement with this information and more, but also be sure to watch the orientation videos below!!

Eligibility & Selection Criteria

This contest is open to all UCF students.  Please note that you will require access to your Knights Mail account.

Selection of students for the UCF Programming Team for the new year will be based on published criteria.


Registration

In order to participate, you must register! Please visit the registration form and complete it. You must only register one time and not for each round! Again, please note you must use your Knights Mail account and it is this address where you will receive login information shortly before your first round.

Note that there is no fee to participate!


Format

Contestants are given anywhere between six to twelve (inclusive) programming problems to solve within the given time limit. The person solving the most problems wins. Ties are broken based on the amount of time taken to solve the problems. Contestants have the option of using C/C++, Java, and/or Python on PC’s. Although it is necessary that each student be familiar with either C, C++, Java, or Python the emphasis of the contest is on problem solving rather than on the specific details of the language. Orientation videos will be provided to allow contestants to get instructions.


Contest Programming Environments

In this online version of the UCF Local Programming Contest, you are welcome to use any programming environment you wish.  If you are unfamiliar with any programming environments, we recommend you use the following environments (all easily downloadable for free):

C/C++:
Code::Blocks (be sure to download the version with the MinGW compiler included)
Java:
jGrasp
Python:
Python/IDLE (IDLE comes with Python -- be sure to download a version 3 release)

For all problems, solution programs must read input from "standard input" (stdin for C, cin for C++, System.in for Java, and sys.stdin for Python) and output to "standard output" (stdout for C, cout for C++, System.out for Java, and sys.stdout for Python). The programs must not display prompts such as "Enter a value" or "Press a key to continue" nor attempt to use colors or graphical/window output.

Be aware that the judges will be judging in Linux using command lines tools with gcc/g++ 11.1.1, OpenJDK 11.0.11, and Pypy 7.3.1 (Python 3.6.4). Specifically, the judges will compile and execute (as appropriate, per language) your submissions as follows (using filename "prog" as an example):

C:
gcc -g -O2 -std=c11 -o prog prog.c -lm
./prog < prog.in > prog.out
C++:
g++ -g -O2 -std=c++17 -o prog prog.cpp -lm
./prog < prog.in > prog.out
Java:
javac prog.java
java -Xss64m -Xmx2048m prog < prog.in > prog.out
Python:
No compilation
pypy3 prog.py < prog.in > prog.out (python3 prog.py < prog.in > prog.out)

Note that the judges will use the just-in-time Python compiler, Pypy, in order to allow your Python submissions to run more quickly.

Prizes

There are no official prizes, just bragging rights! However, the results will be used to help form the UCF Programming Team (varsity) for the academic year, and potentially to help identify candidates for the UCF Developmental Programming Team (junior varsity).  UCF teams will then train to compete in the International Collegiate Programming Contest and attend regional competition.


Orientation Videos

  • Review of the UCF Programming Team and the International Collegiate Programming Contest:

  • Orientation (Part 1):

  • Orientation (Part 2):