Frequently Asked Questions

InstaCode version Helium

Bugs Fixed
  • Problem Page logo fixed.
  • Account tab is now accessible from About Us page.
  • Contest Leaderboard now displays correct information.
  • Glyphicons are now working.

What are the limitations of this version?

Java programmers need to define their main function inside class named 'Main' (like other online judges) or they will get compilation error.


InstaCode version Hydrogen


What is the InstaCode Online Judge?

The InstaCode Online Judge is a Programming Contest Control System. It acts as an interface between the judges and the participants of a Computer Programming Contest.

A Computer Programming Contest is a competition where teams/individuals submit (computer program) solutions to judges. The teams are given a set of computer problems to solve in a limited amount of time (for example 3 hours). The judges then give a pass/fail judgement to the submitted solution which is sent back to the teams. The team rankings are computed based on the solutions, when the solutions were submitted and how many attempts were made to solve the problem. The judges testing is a Black box testing where the teams do not have access to the judges' test data.


How does this website actually work?

The InstaCode Online Judge System has three main parts : the SQL Database (which stores all information), the User Interface (the website that you are currently using) and the Execution Protocol (the scripts that actually run the programs you submit). The website essentially just takes information from the Database, formats it to make it look nice, add options to manipulate it, and presents it to the user.

The data displayed on both sides of the webpage is refreshed a few times per minute (using Ajax) in order to provide you with the latest information conveniently. The User Account system is implemented by Cookies (which are used to save information about whether or not you are currently logged in, and if so, more details about your team).


What type of platform shall my codes be run on?

To prevent malicious codes from harming the Execution Environment or the Server itself, submitted programs are executed on Virtual Machines. The configuration of the Virtual Machine being used right now is given below :

  • Operating System : Debian ; Harddisk : 20GB SSD; RAM : 512MB
  • Brainf**k Interpreter : bf (version 20041219)
  • C Compiler : gcc 4.4.5
  • C++ Compiler : g++ 4.4.5
  • C# Compiler : Mono Compiler Version 2.6.7 (gmcs)
  • Java Compiler : javac 1.8.0_66, java 1.8.0_66
  • JavaScript Interpreter : rhino 1.7
  • Pascal Interpreter : gpc version 20070904
  • Perl Interpreter : perl v5.10.1
  • PHP Interpreter : PHP 5.3.3
  • Python Interpreter : python 2.6.6
  • Ruby Interpreter : ruby 1.8.7

Please contact an Administrator to request support for additional languages.


Why is my program not being Accepted?

The programs are judged by the Execution Protocol as described above. However, there exist cases that havent been dealt with, and some of which are mentioned below along with some common errors :

  • No provision has been made to detect Run Time Errors in case of languages which need to be compiled. Consequently, if one occurs, it may cause the process to hang (returning TLE, Time Limit Exceeded) or to abort (returning WA, Wrong Answer).
  • Java code files must have the same name as the class which contains the main function. If you are uploading *.java files, this should not be a concern, but in case you are submitting text, please ensure that you specify the class name correctly when asked for it.
  • Ensure that your program is not printing anything other that what is asked. Ensure that the print operations that you used for debugging your code are removed or commented out. Also ensure that your program is reading from the Standard Input only, and not a file as during debugging.

If you are sure that none of the reasons described above are applicable in your case, please reconsider the virtual impossibity that logic of your program is flawed, and reexamine your code. If you are absolutely sure that your program is correct in every way, but is still not being Accepted, you may contact an Administrator (via the Clarifications feature) to rejudge or manually run your program (if it does come to that, please quote the Run ID). Note that a particular clarification can only be deleted by the team that requested them provided it not been replied to by an Administrator.


How is the ranking done here?

The primary basis for ranking teams is their score. In case the score of two teams are equal, then the team whose solution got accepted first is ranked higher. Note that every incorrect submission (submitted before the first correct solution) results in a minute penalty on the time of your submission. Therefore, please avoid submiting programs unless you are reasonably sure they will work.


What are the different Contest modes you mentioned before?

The different Contest Modes mentioned earlier are described below :

  • Active Mode : Submissions are allowed, problem types are hidden, and the Timer is On.
  • Passive Mode : Submissions are allowed, problem types are visible, and the Timer is Off.
  • Disabled Mode : Submissions are not allowed, problem types are visible, and the Timer is Off.
  • Lockdown Mode : All features (except FAQ, Main Scoreboard & Clarifications) are disabled for normal users.

The Lockdown Mode is used immediately prior to (Active Mode) contests, during which Administrators (who arent affected by the Lockdown Mode once they log in) are uploading and testing new problems.


Why was Instacode made?

A website like this was needed for a long time, up until now students had to code in TurboC which we all know is an absolute pain. We need to get familiar with the technologies used in current software industry which was never going to happen if students were to code on outdated editors and technologies. This website will replace old methods with newer, faster and more convenient methods of coding.
This website will also help students to prepare for company coding rounds and interview. Nearly all companies now select students through a coding round, students with knowledge of Data Structures, Algorithms and Competitve programming will get an upper hand in those interviews and coding rounds.
The aim of this website is to establish a coding culture in our college.

Contest

Mode Judge

Disabled

Online

Contest Ranking