UTS Programming Competition 2016
From ProgSoc Wiki
INFO SESH! MARCH 31! CB11.03.206 6PM! BE THERE!
The 2016 UTS Programming Competition (sponsored by the Faculty of Engineering and IT, and WiseTech Global) will see entrants race the clock to solve as many problems as they can over four hours. The problems will range from simple beginner level problems, to more challenging problems. A free pizza lunch will be provided on the day!
Registration for this competition is free and open to all UTS students (from any faculty) and ProgSoc members. We encourage both beginners and more experienced programmers to compete. Entrants may enter as individuals, or as teams of two or three. Prizes will be awarded to the best individuals and teams. All entrants will receive certificates of participation. To find out how to register, please check the Registration section below.
The competition will be held on:
Saturday 2nd April 2016, 10.30AM - 3:30PM AEST
The contest location is:
City Campus, Building 11, Level B1
Competition programming languages:
- Java (Java SE Runtime Environment build 1.6.0_34)
- C (gcc version 4.6.3)
- C++ (gcc version 4.6.3)
Marking of answers:
Only the output of your code will be assessed for correctness.
Solutions to problems that are uploaded to the marking system are called submissions. Each submission is judged as accepted or rejected and the individual/team is notified of the results as soon as possible. Note: you have to submit the source code of your program (i.e. do not submit a compiled program or the output of your program). The marking system can compile submissions.
A submission can have the following results:
|CORRECT||The submission passed all tests: you solved this problem!|
|COMPILER-ERROR||There was an error when compiling your program.|
|TIMELIMIT||Your program took longer than the maximum allowed time for this problem. Therefore it has been aborted. This might indicate that your program hangs in a loop or that your solution is not efficient enough.|
|RUN-ERROR||There was an error during the execution of your program. This can have a lot of different causes like division by zero, incorrectly addressing memory (e.g. by indexing arrays out of bounds), trying to use more memory than the limit, etc. Also check that your program exits with exit code 0!|
|NO-OUTPUT||Your program did not generate any output. Check that you write to standard out.|
|WRONG-ANSWER||The output of your program was incorrect. This can happen simply because your solution is not correct, but remember that your output must comply exactly with the Problem Task.|
|TOO-LATE||You submitted after the competition ended! Your submission is stored but will not be processed any more.|
See the left side of this image to get an idea of what the marking system looks like.
Rankings are determined by the following (in order):
- The most number of problems solved (i.e. correct accepted submissions).
- Lowest total elapsed time for solved problems.
Individuals and teams (of 2 or 3 people) will be able to register online by following this link. Registrations will close on Friday 1st April at 6:00PM AEST, or at the discretion of the contest organisers.
We will be hosting an information session to provide more information about the competition, and to provide a chance to practise using the competition software.
The information/practice session will be held on:
Thursday 31st March 2016, 6.00PM - 8:00PM EST
The meeting place is:
CB11.03.206 (small seminar room)
|Start time||End time||Activity|
|6:15PM||8:00PM||Logging in on the competition system and working on practice problems|
For the people who cannot make it to the start of the information session due to schedule conflicts, we can also answer questions about the competition and assist with logging in on the competition system throughout the session.
Who Can Enter
- Current UTS students
- Both undergraduate and postgraduate students are eligible
- Students from ALL faculties are welcome
- ProgSoc members
Cash prizes (prize pool of $5,500):
- First place individual - $1,500
- Second place individual - $750
- Third place individual - $500
- First place group - $1,500
- Second place group - $750
- Third place group - $500
- WiseTech merchandise for all entrants
- Sponsorship for the prestigious ACM International Collegiate Programming Contest (sponsored by IBM) (eligible UTS teams only). Note that eligibility requirements apply.
- Entrants will have a total of 4 hours to solve as many problems as possible.
- Entrants are free to leave the room at any time for breaks.
- The competition clock will not be paused for lunch breaks.
- Printed reference materials, including books, and handwritten notes, may be taken into the room. The only use of the Internet is to access the competition/marking system. All other uses of online resources are prohibited and will be blocked. Entrants must not attempt to circumvent the blocking put in place.
- Mobile phones, tablet devices, smart watches and other personal computing devices must be switched off for the duration of the contest and must be given to competition staff for safekeeping.
- Each team will have access to one, and only one, PC running Linux with a single monitor, mouse and keyboard. Entrants may bring their own keyboard and/or mouse.
- Prior to the start of the contest, entrants are to login to their PCs and the marking system, using the credentials provided. Once logged in, entrants must not touch their keyboard, nor the question booklet provided, until the start of the contest.
- Solutions must be coded in either C, C++, or Java. Solutions that execute shell commands or spawn a shell to run some other scripting language will be rejected.
- Solutions must not be obfuscated, and should clearly show the algorithm used to solve the problem.
- Supervisors cannot answer any questions related to the competition problems. However, you can request for clarification using the marking system and a judge will get back to you. (See the right side of this image). Entrants must not request a clarification in person from a judge, as the judging room is off-limits by entrants for the duration of the contest.
- The judges' decision is final.
- Violation of any of the abovementioned rules by entrants may result in disqualification.
To cater for a variety of ability levels, the competition problem set will consist of a mix of easy problems and difficult problems.
These will be set at the level of Project Euler problems.
Example: Write a program that adds all the natural numbers (i.e. positive integers) below one thousand that are multiples of 3 or 5.
For more easy practice problems: Euler Problem Set
These will be set at the level of ACM ICPC Regional Competition Problems. A few examples:
- Problem 3, 2006 South Pacific Regional Competition - Simple Encryption
- Problem A, 2008 South Pacific Regional Competition - Being Late
More ACM problems can be found at:
Test your solutions on the ACM-ICPC Live Archive Online Judge.
Previous UTS Programming Competition Problem Sets
- UTS Programming Competition 2012 Problem Set
- UTS Programming Competition 2013 Problem Set
- UTS Programming Competition 2014 Problem Set
- UTS Programming Competition 2015 Problem Set
FAQ (Frequently Asked Questions)
Can I use C#, Python, or my all-time favourite language ever in the competition?
This year's competition will only accept Java, C or C++ solutions. Yes, it's time to hit the textbooks again if it's been a while. Look on the bright side, if you decide to participate in the ACM ICPC, you've done your basic revision already! https://icpc.baylor.edu/regionals/rules They only accept Java, C or C++ too].
Do we supply input via standard input, files, or arguments on the command line?
All input will be from standard input, and all output will be to standard output. No arguments will be passed to your program at the command line. No files will be opened for reading or writing.
I have a feeling the system may say my solution is incorrect even though I've met the expected output. Why?
The marking system is a machine, not a person, and will treat the extra output of your solution, such as human-friendly prompts, as 'incorrect'; it is whitespace-sensitive and case-sensitive.
How is the 'total elapsed time' calculated in this contest?
When a correct submission is made to the adjudicators, the number of minutes elapsed since the beginning of the contest at the time of the correct submission is recorded.
Do we program on provided computers or use our own?
We'll be using the computer labs in Building 11. The lab computers will be used to keep the competition fair.
Can we use Windows on the lab computers?
No. Linux (Red Hat, to be exact) will be used, which is the default, on the computer labs. If you have not used the lab computers in Building 11 before, it is recommended you do so before the competition. If you choose to ignore this recommendation and choose Windows at login during the competition, you are wasting precious time -- it will not work; Windows will not load. And even if you did, you will need to be mindful of carriage return differences between Windows and Linux systems in your output (i.e. \n instead of \r\n).
Why haven't you registered yet!?