Tip 1: Practice the most important DSA questions, as they are often repeated on sites like CodeStudio.
Tip 2: Have a deep understanding of the projects you are building.
Tip 1: Include at least 2 good projects explained briefly, covering all important points.
Tip 2: Mention every skill.
Tip 3: Prioritize skills, projects, and experiences.
The online coding test consisted of three standard coding problems.



Given 'N' : 5 (number of packets) and 'M' : 3 (number of students)

And chocolates in each packet is : {8, 11, 7, 15, 2}
All possible way to distribute 5 packets of chocolates among 3 students are -
( 8,15, 7 ) difference of maximum-minimum is ‘15 - 7’ = ‘8’
( 8, 15, 2 ) difference of maximum-minimum is ‘15 - 2’ = ‘13’
( 8, 15, 11 ) difference of maximum-minimum is ‘15 - 8’ = ‘7’
( 8, 7, 2 ) difference of maximum-minimum is ‘8 - 2’ = ‘6’
( 8, 7, 11 ) difference of maximum-minimum is ‘11 - 7’ = ‘4’
( 8, 2, 11 ) difference of maximum-minimum is ‘11 - 2’ = ‘9’
( 15, 7, 2 ) difference of maximum-minimum is ‘15 - 2’ = 13’
( 15, 7, 11 ) difference of maximum-minimum is ‘15 - 7’ = ‘8’
( 15, 2, 11 ) difference of maximum-minimum is ‘15 - 2’ = ‘13’
( 7, 2, 11 ) difference of maximum-minimum is ‘11 - 2’ = ‘9’
Hence there are 10 possible ways to distribute ‘5’ packets of chocolate among the ‘3’ students and difference of combination (8, 7, 11) is ‘maximum - minimum’ = ‘11 - 7’ = ‘4’ is minimum in all of the above.
The idea is based on the observation that to minimize the difference, we must choose consecutive elements from a sorted packet. We first sort the array arr[0..n-1], then find the subarray of size m with the minimum difference between the last and first elements.



A subsequence is a sequence that can be derived from another sequence by deleting zero or more elements without changing the order of the remaining elements.
Due to optimal substructure and overlapping subproblem property, we can also utilise Dynamic programming to solve the problem. Instead of memoization, we can use the nested loop to implement the recursive relation.
The outer loop will run from i = 1 to N and the inner loop will run from j = 0 to i and use the recurrence relation to solve the problem.



The given graph may have connected components.
Use BFS traversal to start traversing the graph.
Pick any vertex and give different colors to all of the edges connected to it, and mark those edges as colored.
Traverse one of it’s edges.
Repeat step to with a new vertex until all edges are colored.
This round comprised a mix of DSA and system design for me.



for the given 5 intervals - [1,4], [3,5], [6,8], [10,12], [8,9].
Since intervals [1,4] and [3,5] overlap with each other, we will merge them into a single interval as [1,5].
Similarly [6,8] and [8,9] overlaps, we merge them into [6,9].
Interval [10,12] does not overlap with any interval.
Final List after merging overlapping intervals: [1,5], [6,9], [10,12]
Construct the intervals, denoted by pair (a,b), to form an array, say I. And sort I w.r.t. a.
Then find the initial interval that covers 0 the most.
Open the tap with the right most range whose range has intersection with the ones already opened; if there is no such tap which means there is a gap and return -1;
Design a Web Crawler.
Tip 1: Practice a lot of question from online sites like coding ninjas.
Tip 2: Ask if you have any doubts from the interviewer instead of assuming things.

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