Tip 1 : Practice atleast 100-150 Medium problems and 20-30 hard problems from leetcode
Tip 2 : Try to give a short contest maybe on leetcode, codeforces or codechef as it is beneficial to crack in Online Test.
Tip 3 : Do atleast 2 projects and ask find answers like why are you choosing this tech stack? why did not you choose its alternatives Know your project in and out because they might ask you an modification in your project.
Tip 1 : Have some projects on resume.
Tip 2 : Do not put false things on resume.
Tip 3 : Try to keep a single page resume.
Tip 4 : If your CGPA is quite low do not mention it on the resume.
Tip 5 : In achievements sections only add relevant achievements. Putting achievements like "won painting competition" or "won dancing competition" wont help.
We were given a number system where 0 was mapped to 9, 1 to 8, 2 to 7, 3 to 6 and so on.We were given an positive integer as an input and we had to convert it into an integer in the new number system.
1)Relationship for any digit x its value in new number system was 9 - x
2)Converted integer to string
3)Manipulated every index of this string using the relationship.
4)Converted this string to number and returned the answer.



For each node during pre-order traversal of s, use a recursive function isSame to validate if sub-tree started with this node is the same with t.



Let ‘N'=3, hence the length of the binary string would be 3.
We can have the following binary strings with no consecutive 1s:
000 001 010 100 101
You can easily observe pattern. It is a Fibonacci sequence
This was a data structures round.



If there are any duplicates in the given array we will count only one of them in the consecutive sequence.
For the given 'ARR' [9,5,4,9,10,10,6].
Output = 3
The longest consecutive sequence is [4,5,6].
Can you solve this in O(N) time and O(N) space complexity?
I thought of two points on a number line a and b and formulated a consecutive sequence [a....b], (b*(b+1))/2-(a*(a+1))/2=n. Now we have a clearly quadratic solution by brute-forcing a and b but if we simplify it further we have (b-a+1)*(b+a) = 2*n. So now we can easily find all divisors of 2*n and satisfy the equation for which we get a>=0 and b>=0 and thus we get the answer.



'ARR[]' = [1, 2]
The size of the array is 2. So, the total number of permutations is 2! = 2. The possible permutations are [1, 2] (the array itself) and [2,1] where the position of element 1 in the original array is swapped with element 2 and vice-versa.
1. All the numbers in the array are unique.
2. You can return the answer in any order.
3. The original array is also a permutation of the given array.
I knew the recursive solution as it is a very popular interview problem.The idea is much like the insertion sort. We start with only the first number, and pick next number from the rest of array, insert it to the front or back position of the first number, and pick the third number, insert it to front or mid or back position of the [first, second] array, and so on, until no element left.
This was a data structures round.



‘ACE’ is a subsequence of ‘ABCDE’ because ‘ACE’ can be formed by deleting ‘B’ and ‘D’ without changing the relative order of characters. ‘ADB’ is not a subsequence of ‘ABCDE’ because we can get ‘ABD’ from ‘ABCDE’ but not ‘ADB’ and in ‘ADB’ relative order of ‘B’ and ‘D’ are different from original strings.
1.Strings ‘STR1’ and ‘STR2’ consists only of English uppercases.
2.Length of string ‘STR2’ will always be greater than or equal to the length of string ‘STR1’.
For example, the given ‘STR1’ is ‘BAE’ and ‘STR2’ is ‘ABADE’.
String ‘STR1’ is a subsequence of string ‘STR2’ because ‘BAE’ can be formed by deleting ‘A’ and ‘D’ from ‘ABADE’ and the relative ordering of the characters of the string ‘ABADE’ persists.

Easy problem iterate over the longer string and keep a counter for matching it with shorter string if a match occurs while iterating longer string increment the counter and if we have done iterating on the longer string if the counter value is equal to shorter string length then return true else return false.


VEC[][]= {{5, 10}, {25, 15}}

All the rectangles denote the possible falling paths. The rectangle with red filler is the minimum falling path with the minimum falling path sum of 20 (5+15).
It was also an easy problem as I had done it before.The minimum path to get to element A[i][j] is the minimum of A[i - 1][j - 1], A[i - 1][j] and A[i - 1][j + 1]. Starting from row 1, we add the minimum path to each element. The smallest number in the last row is the minimum path sum.
This round was all about OS/DBMS questions.
Three questions were asked: -
1. What is Virtual Memory?
2. What is Belady's Anomaly?
3. What is page fault?
Watch Sanchit Jain videos for OS
Find nth maximum salary from employee table. Schema of the table is: -
(employee_id,employee_name,employee_salary)
Study SQL and practice SQL queries.

Here's your problem of the day
Solving this problem will increase your chance to get selected in this company
What is recursion?