# How to prepare for Google Kickstart – a CodeJam competition?

Google Kickstart, formerly known as APAC is a test designed to hire people who are looking for a career in Google. The major difference between its former form and Kickstart is that there will be more testing rounds than before and is targeted to any age group rather than graduating students.

Designed to hire the best minds of the Asia Pacific region, the test primarily focuses on problem-solving abilities, Data Structures, and algorithms. Preparing for Kickstart involves getting familiar with its judging environment because it is quite different from other problems.

**Format**

- There will be eight online rounds of algorithmic quizzes designed by Google engineers
- Each round of the eight online rounds consists of four coding problems A, B,C, and D
- The top participants from each round may be invited to interview for a role at Google
- Schedule of the Contest
- FAQs of Contest
- Registration Link

**Getting familiar with the Judging Environment**

- You can use any programming language or IDE if they are licensed.
- The judging environment is quite different, instead of just uploading your code, you need to upload an output text file also.
- The competition arena consists of problems to be solved.
- For any single problem there exist 2 subparts
- Small Input with small constraints.
- Large Input with large constraints.

When you have coded the problem and want to submit it for small inputs, download the text file, as soon as the file is downloaded a timer of 4 min starts and you have to run your inputs over your code and upload the text file within the time limit.

You will immediately get to know if your submission was correct.

In case of more than 1 submission, the submission which fetched the most points first (small or large) will be considered and a penalty will be awarded for wrong submissions. Each time you download the file, a new set of test files is generated.

Submitting for large inputs, a timer of 8 minutes starts and you have to submit your code and output file along with it within the time limit but in this case, the output file will remain the same in contrast to the small inputs.

To get acquainted with the environment, please watch this official video tutorial.

**Preparation Strategy**

Google kickstart heavily focuses on proficiency in Data Structures and Algorithms and preparing for it is not an easy task but sure an enjoyable one. This article is written assuming that the reader has mild experience in programming because only then he/she is aiming for a career.

**Brushing up the basics:** Solve various easy-medium level problems so you grasp the important small tips and tweaks. This will also increase your efficiency, accuracy, and speed.

Solving many problems from here will build up your base

**What to study?**

**a) Learn** **Number Theory**

- Practice Number Theory Problems
- Learn the art of Problem Solving
- Important topics of number theory – Quora

**b) ****Greedy algorithms:**** **Although questions from greedy are seldom asked but are important as they lay the foundation for various algorithms. Refer to this to find greedy algorithm problems.

**c) Binary Search:** This is a very important tool when it comes to problem solving and problems based on it are asked repetitively. Good articles to be read:

**d) ****Graphs****:** Google kickstart is an easy-medium test hence basic-medium level questions from the graphs can be asked. Do practice questions based on DFS, BFS, Dijkstra, Flloyd Warshall, MST, and flow problems.

Practice Questions on Graph

**e) Dynamic programming:** Although a variety of questions can be designed from the DP domain but fairly easy to medium questions are predicted. Practice DP a lot and do read:

**f)**** Divide and Conquer****: **This topic also helps to solve problems in KickStart.

**g) More Advance Topics:**

Though problems from advanced data structures are seldom asked do read about Trie, BIT tree, BST. Also read:-

- Hashing
- Bit Algorithms
- String Algorithms (Rabin Karp, KMP, Aho-Crosaick)

**Extra Pointers**

- Google Kickstart is all about speed and accuracy, focus on your speed rather than solving very tough problems and solve easy-medium problems as much as you can.
- Get familiar with Big-O notation and calculation of computation time.
- Start preparing beforehand and don’t lose hope if you donâ€™t perform well in the first round, there are 7 more rounds after the first round.
- Excellent Performance can get you a call from Google for an interview.
- Aim to get within 100 in the first few APAC tests (A, B, or C). It will brighten your chances for interview shortlisting.

All the best!!

This article is contributed by **Yash Kodesia** **in association with Team GeeksforGeeks**. If you like GeeksforGeeks and would like to contribute, you can also write an article and mail your article to review-team@geeksforgeeks.org. See your article appearing on the GeeksforGeeks main page and help other Geeks.

Please write comments if you find anything incorrect, missing or you want to share more information about the topic discussed above.

## Please

Loginto comment...