Frequently Asked Questions.
General
- Why is Google offering a data-driven contest?
There are many coding contests that are currently offered to programmers. We are aiming to provide a fun and familiar coding competition with a different spin. By having a contest where users run their own code, we allow programmers the flexibility to use the programming languages and techniques of their choice.
- What is considered cheating?
Collaborating with anyone else during the contest is strictly prohibited and will result in your disqualification. This includes discussing or sharing the problem statements or solutions with others. Creating or participating with multiple accounts is also prohibited. If we believe that you have undermined the integrity of the contest, we reserve the right to disqualify you. Use your best judgment. If you have a question about whether something is allowed, please ask an administrator.
- Are the questions available in other languages? Can I use a translator?
Because programming problems often require very precise language, the risk of mistranslating a problem is too great, and the consequences are very severe: a single wrong word can give a very real disadvantage or advantage to contestants reading it. Because of this, we've decided not to translate the problems or website into other languages. You may use the translator of your choice.
- How do I get a visa if I make it to the Local Onsites or the Onsite Finals? Will I need a passport?
-
Google will provide a visa invitation letter after Round 3 to anyone in the Top 500, who will need a tourist visa if they advance to the Local Onsites. To ensure that finalists receive their tourist visa in time, it is recommended to secure an early visa appointment with the embassy.
After the Local Onsites, Google will provide a visa letter to anyone in the Top 100, who will need a tourist visa to participate in the Onsite Finals in Mountain View, California. Google will cover the reimbursement of your visa(s).
Please note that it is your responsibility to have a valid passport before your date of travel.
Programming languages, development environments
- Can I use an obscure or exotic coding language?
-
Absolutely! As long as the compiler or interpreter you used for that language is freely available and easy to download and use, you are free to use any language you want. Please include a README file with details on how to obtain a copy of the compiler and instructions on how to compile your code. If the administrators are unable to freely and easily obtain the compiler and compile your code, your submission will be marked incorrect.
If your compiler/interpreter has limitations placed on who can use it, for example a limitation of 30 days' use after installation, it must be available to all contestants for 48 hours after a round in which you use it. This includes contestants who have previously installed the compiler/interpreter.
- Can I use a different programming language from the one I registered for?
We've asked you to selecting your preferred programming language during registration purely for our own interest, so we can find out what our contestants like to use. During the contest, you may use any language(s) as long as other contestants will have no problems running your source code and producing the same output.
- What development environments can I use?
You can use any programming language or tools, as clarified above. You can also write helper code before the contest, or even pull code off the web (as long as it's under a license that you and we can use without charge or restriction). When you submit the output for each problem, you'll need to submit all of the code that you used.
- What OS and browser should I use?
You are free to use whichever operating system you wish for solving the problems. We continually test the website on Linux, Windows and Mac OS to make sure it works on as many operating systems and browsers as possible. The site should work with most modern browsers; if you're having trouble with yours, please let us know and fall back to Firefox 2+ or Internet Explorer 7+ while we examine your issue.
Competition details
- What if I have a question during the contest, for example if I think a problem statement is ambiguous? How will the administrators respond to my question or make an announcement to participants?
-
To contact an administrator with questions about the contest:
- Click "Ask a question" from the left menu. The "Questions and Answers" screen displays.
- Type your question in English in the text field.
- From the drop-down menu, select whether you have a general question about the competition or a question about a particular problem.
An administrator will respond to your question in English, either to you directly or to all contestants. When the administrator responds, a number in parentheses displays next to your "Ask a question" link, indicating how many unread messages you have.
- What is the purpose of pre-downloading encrypted inputs? Where can I pre-download the encrypted inputs?
-
The encrypted inputs are for the large input/output sets only. If you have a slow network connection, we suggest that you pre-download the encrypted input files, by going to "More options" next to "Large input." If you do so, you will need to download the decryption key when you are ready to solve the large input/output set. The 8-minute timer will begin running as soon as the decryption key starts downloading.
We recommend that you download the decryption software before the contest.
- The Qualification Round is 24 hours long – what does that mean? Do I have to compete the whole time, or what?
The Qualification Round lasts 24 hours, during which you can compete at any point. You can spend any amount of time during the round writing your solutions, though we intend the problems to be solvable in a couple hours. As long as you leave yourself enough time to solve the problems, there is no disadvantage to competing later in the 24-hour period.
Solving problems
- Do I have to solve the problems in any particular order? How long do we have to view the problems?
You can answer the problems in any order that you wish. In particular, looking at a problem does not start any timers, so you could read all of them at the start and solve them in the order of your choice. There are different point values for each input in each problem, and we will generally give lower point values to the questions we think are the easiest.
- How do I open the .in file that I downloaded?
The ".in" files are simply text files. You are required to write a program that takes the text from the .in file as input and produces some output (as defined by the problem statement). If you would like to look inside the .in file, you can open it in a text editor. Wordpad or Notepad++ will work, as well as any other editor that understands UNIX endlines. (Notepad will display .in files incorrectly.)
- How do I know if I solved a small input correctly?
A message will appear in yellow above the problem interface telling you whether you solved it correctly or not.
- How do I know if I solved a large input correctly?
The judgments for the large inputs will not be available until the end of the round. We will have a "quiet period" at the end of the round before revealing results.
- What are the requirements for uploading source code files?
You must upload all of your code in addition to any non-standard libraries you used to solve each input/output set. Uploading files larger than 100kB is not allowed. You may upload a ZIP archive containing multiple files, as long as their total uncompressed size does not exceed 1MB. With each submitted output file, you must submit the source code used to generate that output.
- What if I upload the wrong source code file? Can I submit solutions or my source code files after the contest?
-
If you realize that you have accidentally submitted the wrong source code, please contact our administrators during the contest and ask for a chance to resubmit. A penalty may be applied.
The system will only accept solutions and source code files within the contest round. If you submit a solution or source code after the contest period round, it will not count toward your score.
It is a violation of the rules to submit code that is different from the code used to produce your output for the corresponding input. Doing so may result in disqualification.