Tip 1: Practice DSA consistently.
Tip 2: Have good projects and a deep understanding of them.
Tip 3: Maintain a good Resume.
Tip 1: Have good and unique projects and host them.
Tip 2: Get it reviewed by working professionals and tailor it based on the role applying to.
The link was provided in the morning and we had 24 hours to complete the test, It was an online assessment on the AMCAT platform.



You're given a string S, an integer K, and a boolean isLeft, rotate the boolean K positions to left if isLeft is true else to the right, and return the final string.
We can rotate the string in constant space and linear time by the technique of substring reversal, to rotate K positions to the left we reverse the first K characters and the remaining and finally reverse an entire string.



Given a functional graph (almost 1 outgoing edge), and edge weights, find the cycle in a graph with the maximum sum of weights in it.
From each node follow its edge till we see an already visited node or there is no edge, we also store a timer of when the node was visited, upon seeing a visited node we find the sum of the current cycle by moving backward and adding edge sums and taking the max of all cycles.



Given a grid representing whether each cell is water or land, it contains exactly 2 islands, find the length of the shortest bridge that can connect both.
Starting from any cell of the first island, now assume moving from land to another land cell is free of cost while moving to any other cell costs 1, then the problem is to simply perform 0/1 BFS on the grid and return the first land cell with non-zero distance.
It was the PS/DS round which was primarily for testing DSA skills on candidates and was crucial for advancing to further rounds.



Given an array which circular (first and last element adjacent), find the maximum sum of any non-empty subarray.
Firstly I gave a casework solution where we precompute maximum prefix and suffix sums up to each index, which was linear space complexity and the interviewer wanted a constant space solution.
After some hint I realized that we can simply find the minimum subarray sum instead and subtract from the total which is equivalent to the maximum in a circular array, this can be done with Kadane's algorithm.



We're given an array of days when we want to travel, we've 3 types of passes day pass, week pass and month pass each having a cost, starting at day 1 we want to spend minimum cost buying passes so that on each day in the array we would be traveling.
I applied Dynamic programming, dp[i] would store the minimum cost of tickets from i'th day, I did transition using binary search which the interviewer didn't like so I explained we can use pointers to do in linear time, I still coded the binary search solution.
This was a Frontend + PS/DS round where the emphasis was on knowledge about frontend development while solving DSA problems.



Given a string S and target T find the minimum length of any substring of S which contains all characters of T.
This can be solved using a sliding window and keeping a counter, the interviewer wanted a solution in Javascript so I used an object to keep count did the sliding window, and checked if the left pointer could move forward, taking min of all.
Design a React app with 3 buttons that keep their count of clicks on the top and each click also updates a global counter, designed such that it's easy to extend a number of buttons.
Tip 1: Always ask for clarification instead of making assumptions.
Tip 2: Do not overcomplicate and keep the solution simple.
Tip 3: Have an explanation for each design decision, its pros and cons.
This was the Hiring Manager round and involved non-technical questions about career and work ethics.
Tip 1: Be honest
Tip 2: Don't exaggerate.
Tip 3: Have a clear understanding of your role.
Tip 1: Have unique projects with a purpose.
Tip 2: Have a deep understanding of the project and why you built it the way it is.
Tip 1: Know the purpose of each project and real-life examples.
Tip 2: Learn about various planning techniques when building something.
Tip 1: Be honest about goals but don't mention salary hike is your goal.
Tip 2: Research about the company and why it interests you.

Here's your problem of the day
Solving this problem will increase your chance to get selected in this company
Which SQL clause is used to specify the conditions in a query?