Google’s Online Challenge for 2021 Intern (India) Experience
I saw a job posting on Google’s career page so I applied for the Google internship but without any hope, as I am from a tier – 3 colleges. But after some days I got an email regarding the test link and other credentials.
So, let’s talk about the coding test.
Hey geek! It's time to become a success story instead of reading them. Check out our most renowned DSA Self Paced Course, now at a student-friendly price and become industry ready. And if you are looking for a more complete interview preparation resource, check out Complete Interview Preparation Course that will prepare you for the SDE role of your dreams!
Feeling prepared enough for your interview? Test your skills with our Test Series that will help you prepare for top companies like Amazon, Microsoft, TCS, Wipro, Google and many more!
The coding test was held on HackerEarth, it consists of 2 questions one was easy and the other one was a little tricky. We had 60 minutes to solve these questions. I solved both questions. So, the questions were like this:
Question 1: Unspecified Words
Problem Statement: There are N words in a dictionary such that each word is of fixed length M and consists only of lowercase English letters, that is (‘a’, ‘b’, ‘c’, ………’z’).
A query word is denoted by Q. The length of a query word is M. These words contain lowercase English letters but at some places instead of a letter between ‘a’, ‘b’……’z’ there is ‘?’. Refer to the Sample Input section to understand this case.
A match count of Q, denoted by match_count(Q), is the count of words that are in the dictionary and contain the same English letters(excluding a letter that can be in the position of ‘?’) in the same position as the letters are there in the query word Q. In other words, a word in the dictionary can contain any letters at the position of ‘?’ but the remaining alphabets must match with the query word.
You are given a query word Q and you have required to compute match_count.
- The first line contains two space-separated integers N and M denoting the number of words in the dictionary and length of each word respectively
- The next N lines contain one word each from the dictionary.
- The next line contains an integer Q denoting the number of query words for which you have to compute match_count,
- The next Q lines contain one query word each.
Output format: For each query word print match_count for a specific word in a new line.
1<=N<=5 x 104 1<=M<=7 1<=q<=105
5 3 cat map bat man pen 4 ?at ma? ?a? ??n
2 2 4 2
Question 2: XOR query
Problem Statement: I didn’t remember the actual statement but it was something like we are given an array with a single element i.e 0 and after that, we have some queries which are of 2 types :
- Type 1: Insert the given element into the array
- Type 2: XOR all the elements present in the array with the given element.
- An integer Q which represent the count of queries that are going to be asked
- Q lines having two integers n and m
- n represents the type of operation i.e 1 or 2
- m represents the element that will be used to do operation according to the given type of operation.
Output format: Print the final array after all the given queries in sorted order.
1<=Q<=107 n = 1 or 2 1<=m<=109
6 1 3 1 5 2 5 1 6 1 7 2 6
0 0 1 6
It was such an amazing experience, now I am waiting for some good news.