Tip 1 : Practice problems of different types from websites like codeforces ranging from a rating of 1400 to 2200.
Tip 2 : Give competitive coding contests to be able to think quickly.
Tip 3 : Learn everything mentioned in your resume in depth.
Tip 1 : Mention good projects with good system design to enable healthy discussion in interview.
Tip 2 : Don't write anything in which you are not comfortable enough.
There were three coding questions of increasing difficulty. This was the major elimination round as only 4 were shortlisted for next rounds.



If the input string is "abbc", then all the possible palindromic substrings would be: ["a", "b", "b", c", "bb"] and hence, the output will be 5 since we have 5 substrings in total which form a palindrome.
A string is said to be a 'Palindrome' if it is read the same forwards and backwards.
For example, “abba” is a palindrome, but “abbc” is not.
A 'Substring' is a contiguous sequence of characters within a string.
For example, "a", "b", "c", "ab", "bc", "abc" are substrings of "abc".
Observation
Given an array of N integers, find the number of ways modulo 1e9+7 to select K integers such that their product is positive integer. The given integers can positive or negative. N <= 1e6, K <= N.
Basic combinatorics, Preprocessing, Modular inverse



If edges[i][j] = 1, that implies there is a bi-directional edge between ‘i’ and ‘j’, that means there exists both edges from ‘i’ to ‘j’ and to ‘j’ to ‘i’.
Given:
‘N’ = 3
‘edges’ = [[0, 1, 1], [0, 0, 1], [0,0,0]].

DSU, Two coloring
The interviewer was subject matter expert from IIT Delhi in the topic of my project. So this was resume discussion round in which I was asked to explain the nitty gritty details of my project of what, why and how I did. He also came up with a slightly different situation in which my skill of project could be applied and he expected to think through the solution to that.
The interviewer was a SDE-1 and had a good knowledge of data structures and algorithms and was really cool and patient.



1. By unique it is meant that no other composition can be expressed as a permutation of the generated composition. For eg. [1, 2, 1] and [1, 1, 2] are not unique.
2. You need to print all combinations in non-decreasing order for eg. [1, 2, 1] or [1, 1, 2] will be printed as [1, 1, 2], however, the order of printing all the sequences can be random.



Let’s say you have an array/list ‘ARR = [1,1,2,2]’.
Then a valid rearrangement can be [1,2,1,2] or [2,1,2,1] such that no two adjacent elements are equal. [2,1,1,2] is an invalid arrangement because two adjacent elements are equal.
The interviewer was a VP and had great experience in the subject matter of my project. He was really cool and the interview seemed like a discussion rather than an interview.
We started off with a brief discussion of my projects and then he asked me to come up with a approach to a problem which involved the same subject matter.
My project was based on deep learning so the problem statement was meant to check my data preparation skills, knowledge of deep learning algorithms and their understanding of when to use what based on the situation and kind of data available.
Pro Tip: Take all these system design interviews as discussion and go with explaining your approach and gradually improving by taking feedbacks. Interviewer never expects to listen the best solution. He is really interested in a healthy discussion.

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