i
Cult.fit
Filter interviews by
Clear (1)
I was interviewed in Nov 2020.
Round duration - 45 Minutes
Round difficulty - Medium
The first Round was held on Hackerrank and the questions were of medium difficulty based on Data Structures and Algorithms.
The time of test was 1:00 PM and it was of 45 minutes with 2 coding questions to be solved.
You are provided with 'N' intervals, each containing two integers denoting the start time and end time of the interval.
Your task is to merge all overlapping intervals a...
Merge overlapping intervals and return sorted list of merged intervals by start time.
Sort the intervals based on start time.
Iterate through intervals and merge overlapping intervals.
Return the list of merged intervals sorted by start time.
Consider 'N' individuals standing in a circle, numbered consecutively from 1 to N, in a clockwise direction. Initially, the person at position 1 starts counting and will skip K-...
The Josephus problem involves eliminating every Kth person in a circle until only one person remains. Determine the position of the last person standing.
Use a circular linked list to simulate the circle of people.
Iterate through the list, skipping K-1 nodes and removing the Kth node until only one node remains.
Return the position of the last remaining node.
Example: For N=5, K=2, the last person standing is at position
Round duration - 75 minutes
Round difficulty - Medium
A google Doc was shared with us and we were supposed to write code there.
Use of IDEs was not allowed so we had to write correct code on Google Docs which was later checked by them through online IDEs.
The Interviewer were friendly and observative and helped us through code if we made some silly error.
You are given an array/list HEIGHTS
of length N
, where each element represents the height of a histogram bar. The width of each bar is considered to be 1.
Compute the area of the largest rectangle that can be formed within the bounds of a given histogram.
Iterate through the histogram bars and maintain a stack to keep track of increasing heights.
Calculate the area of the rectangle by considering the current height and the width of the rectangle.
Update the maximum area found so far as you iterate through the histogram.
Handle edge cases like when the stack is empty or when ...
Given a binary tree of integers, your task is to return the boundary nodes of the tree in Anti-Clockwise direction starting from the root node.
The first line ...
Return the boundary nodes of a binary tree in Anti-Clockwise direction starting from the root node.
Traverse the left boundary nodes in top-down order
Traverse the leaf nodes in left-right order
Traverse the right boundary nodes in bottom-up order
Handle duplicates by including them only once
Round duration - 60 minutes
Round difficulty - Easy
The face to face round was held on Google Meet where initially interviewer asked a DS/Algo problem. Later the manager joined and asked about our resume projects in detail.
The time was 10:00 AM.
Given an array of numbers, the task is to find the maximum sum of any contiguous subarray of the array.
The first line of input contains the size of the arr...
Find the maximum sum of any contiguous subarray in an array of numbers in O(N) time.
Use Kadane's algorithm to find the maximum subarray sum in O(N) time.
Initialize two variables: max_sum and current_sum to keep track of the maximum sum found so far and the current sum of the subarray being considered.
Iterate through the array and update current_sum by adding the current element or starting a new subarray if the current...
Given a sorted array that has been rotated clockwise by an unknown amount, you need to answer Q
queries. Each query is represented by an integer Q[i]
, and you must ...
Search for integers in a rotated sorted array efficiently using binary search.
Use binary search to efficiently find the index of each query integer in the rotated sorted array.
Handle the rotation of the array by finding the pivot point first.
Check which half of the array the query integer falls into based on the pivot point.
Return the index of the query integer if found, else return -1.
Tip 1 : Prepare OS,DBMS,OOPs too
Tip 2 : Mention at-least one project or past work experience in your resume
Tip 3 : Try maintaining 8+ CGPA as sometimes shortlist is done based on CGPA
Tip 4 : Try past interview questions from Leetcode,Interviewbit.
Tip 1 : Try to Keep Resume 1 Pager
Tip 2 : Have atleast one project or past work experience mentioned
Tip 3 : Don't put false things on Resume as questions are asked in detail from Resume
I was interviewed before Sep 2020.
Round duration - 60 Minutes
Round difficulty - Medium
It was early in the morning from 8 am. It was a test from home itself. It was a conducted on HackerEarth and was of 60 minutes duration. 30 students were shortlisted. I was also shortlisted.
You are given a list of N
strings called A
. Your task is to determine whether you can form a given target string by combining one or more strings from A
.
The strings from A
c...
Given a list of strings, determine if a target string can be formed by combining one or more strings from the list.
Iterate through all possible combinations of strings from the list to form the target string.
Use recursion to try different combinations of strings.
Check if the current combination forms the target string.
Return true if a valid combination is found, otherwise return false.
Your task is to break a board of given dimensions 'L' by 'W' into 'L' * 'W' smaller squares, ensuring the total cost of breaking is minimized.
The first line con...
The task is to minimize the cost of breaking a board into smaller squares by making horizontal and vertical cuts.
Iterate through all possible horizontal and vertical cuts to find the minimum cost
Use dynamic programming to optimize the solution by storing intermediate results
Calculate the total cost by summing up the costs of all cuts
Round duration - 45 Minutes
Round difficulty - Hard
This round was scheduled around 12 pm. It was a virtual round with one interviewer who was a Cure.Fit employee. My resume was scanned and a brief introduction was asked. After that a question was put up which I had to find solution to and code it. In the end, I asked questions regarding the type of projects they work on etc. I was selected for the next round
Given a string of length 'N' containing only the characters: '[', '{', '(', ')', '}', ']'. At certain places, the character 'X' appears in place of any bracket. Your go...
Determine if a valid balanced sequence can be achieved by replacing 'X's with suitable brackets.
Iterate through the string and keep track of the count of opening and closing brackets.
If at any point the count of closing brackets exceeds the count of opening brackets, return False.
If all 'X's can be replaced to form a valid balanced sequence, return True.
Round duration - 60 Minutes
Round difficulty - Easy
As soon as the HR round got over. I was asked to sit for my next round. It was again a problem solving round along with Data Structure questions in the end. The interviewer was an employee of Cure.Fit and after a brief introduction, I was given a question. After solving it, I was asked questions on Hashmaps, their implementation, time complexities. Finally, I was selected :)
You are given the ‘root’ of a Balanced Binary Search Tree and an integer ‘target’. Your task is to determine if there exists any pair of nodes such ...
Given a Balanced BST and a target integer, determine if there exists a pair of nodes with sum equal to the target.
Traverse the BST in-order to get a sorted array of values.
Use two pointers approach to find the pair with sum equal to target.
Consider edge cases like negative numbers and duplicates.
Time complexity can be optimized to O(n) using a HashSet to store visited nodes.
Tip 1 : Do competitive programming and maintain a decent rating across platforms. This will make you comfortable with the coding rounds and thinking under pressure and in a time-bounded manner.
Tip 2 : Practice some company wise questions, especially of Google, Facebook, Amazon, Microsoft from Leetcode 1-2 months before the placement/internship season to get yourself accustomed to good interview type questions.
Tip 3 : Practice Dynamic Programming using a top-down approach as this not only improves DP but also improves recursion thinking. Recursion in turn help you to solve questions on Trees, graphs, and backtracking.
Tip 4 : Have at least 2 good projects on your resume which is solving some real-life problems. I won't recommend making just clones, rather add more functionalities. Web Development projects are good to start with.
Tip 5 : Study the core subjects for internships in the following priority manner: OOPS>>OS>=DBMS. Some colleges may have System Design as well. That can be studied in the same manner like OS.
Tip 6 : Get yourself a good mentor to guide yourself.
Tip 1 : Keep your resume simple and formal.
Tip 2 : Having a past internship opportunity is a plus.
Tip 3 : Have good projects and mention them only if you know the depth of it.
Tip 4 : List your achievements chronologically and focus on participating in various competitions and getting recognition.
I was interviewed before Sep 2020.
Round duration - 60 minutes
Round difficulty - Easy
Had to solve 2 easy coding problems. Could be solved in 25 minutes if you are well prepared with DS-Algo.
Given a list of ‘N’ jobs, each associated with a deadline and a profit obtainable if completed by the deadline, schedule the jobs to maximize the total profit. Each job ta...
The job scheduling problem involves maximizing profit by scheduling jobs with deadlines and profits optimally.
Sort the jobs in decreasing order of profit.
Iterate through the sorted jobs and schedule them based on their deadlines.
Keep track of the maximum profit achievable by scheduling jobs within their deadlines.
Example: For input Jobs: 'A'(profit=20, deadline=1), 'B'(profit=30, deadline=2), 'C'(profit=40, deadline=2)...
Given a matrix A
with dimensions 'N' x 'M', where each cell represents the height of water in that location, determine the coordinates from which water can flow to both the Pa...
Given a matrix representing water heights, find coordinates where water can flow to both Pacific and Atlantic oceans.
Create a function that performs a depth-first search to find coordinates where water can flow to both oceans.
Keep track of visited cells and check if a cell can flow to both oceans by comparing its height with neighboring cells.
Return the coordinates in lexicographical order as the output.
Round duration - 40 minutes
Round difficulty - Medium
Questions on Computer science subjects like OS, DBMS, OOP
Different types of memory in operating systems include RAM, ROM, virtual memory, cache memory, and registers.
RAM (Random Access Memory) - volatile memory used for storing data that is actively being used by the CPU
ROM (Read-Only Memory) - non-volatile memory that stores firmware and boot-up instructions
Virtual Memory - a memory management technique that uses disk space as an extension of RAM
Cache Memory - high-speed me...
Round duration - 40 minutes
Round difficulty - Easy
General Discussion on Resume, some in depth questions on a project of interviewer's choice.
Tip 1 : Never leave any topic from any chapter or subject
Tip 2 : Learn to explain your thoughts well
Tip 3 : Learn from previous experiences / interviews / problems asked.
Tip 4 : At least have 4 projects in Resume
Tip 1 : At least have 4 projects on Resume
Tip 2 : Do not write false things. You always get caught. Be genuine.
Top trending discussions
2 DSA questions with in one hour.
Merge two binary trees by summing up the values of corresponding nodes
Traverse both trees simultaneously and sum up the values of corresponding nodes
If a node exists in only one tree, add it to the merged tree as is
Recursively merge the left and right subtrees
Developed a web application for tracking personal fitness goals and progress
Used HTML, CSS, and JavaScript for front-end development
Implemented a RESTful API using Node.js and Express for back-end functionality
Utilized MongoDB for database storage and retrieval
Incorporated user authentication and authorization using JWT tokens
I am a dedicated and quick learner with strong problem-solving skills and a passion for software development.
Strong problem-solving skills demonstrated through previous projects and coding challenges.
Quick learner who can adapt to new technologies and tools efficiently.
Passionate about software development and constantly seeking to improve my skills.
Dedicated to delivering high-quality code and meeting project deadline...
I was interviewed before Aug 2023.
3 question of basic and 3 mcq
Strings,Sort 0 1 2,invert binary tree
My daily routine involves coding, debugging, attending meetings, and learning new technologies.
Start the day by checking emails and prioritizing tasks
Code and debug new features or fix existing issues
Attend team meetings to discuss progress and roadblocks
Spend time learning new technologies or improving coding skills
Collaborate with team members on projects
Binary Search has a time complexity of O(log n) and is derived from dividing the search space in half at each step.
Binary Search is a search algorithm that works on sorted arrays.
It starts by comparing the target value to the middle element of the array.
If the target value is smaller, the search continues on the lower half of the array.
If the target value is larger, the search continues on the upper half of the array.
T...
QuickSort is a sorting algorithm that uses divide and conquer approach.
Choose a pivot element from the array
Partition the array into two sub-arrays, one with elements less than the pivot and one with elements greater than the pivot
Recursively apply the above steps to the sub-arrays
Combine the sorted sub-arrays to get the final sorted array
Code for Fibonacci Series using Recursion, Iteration and Dynamic Programming
Recursion: Define a function that calls itself with the previous two numbers in the series as arguments
Iteration: Use a loop to calculate the series by adding the previous two numbers in each iteration
Dynamic Programming: Store the previous two numbers in variables and use them to calculate the next number in the series
Implementing a Queue using Stacks
Use two stacks to implement a queue
Push elements onto the first stack
When dequeuing, pop all elements from the first stack and push onto the second stack
Pop the top element from the second stack to dequeue
If the second stack is empty, pop all elements from the first stack and push onto the second stack
MergeSort is a divide and conquer algorithm that sorts an array of strings.
Divide the array into two halves
Recursively sort the two halves
Merge the sorted halves
Counting Sort is a sorting algorithm that sorts elements by counting the number of occurrences of each unique element.
Count the occurrences of each element in the array
Calculate the cumulative sum of the counts
Place each element in the sorted array based on its count and cumulative sum
Time complexity is O(n+k) where n is the number of elements and k is the range of input
Example: Sort an array of strings based on their
Chrome uses an algorithm to predict and suggest words based on user input.
Chrome's algorithm uses a combination of user history, bookmarks, and popular searches to predict and suggest words.
The algorithm also takes into account the frequency and recency of the user's input.
Chrome's suggestion feature is powered by Google's Autocomplete API, which uses machine learning to predict and suggest words.
The suggestions are di...
I was interviewed before Apr 2021.
Round duration - 90 minutes
Round difficulty - Medium
This round had 3 coding questions of Medium to Hard level of difficulty.
Given an integer N
representing the number of pairs of parentheses, find all the possible combinations of balanced parentheses using the given number of pairs.
Generate all possible combinations of balanced parentheses for a given number of pairs.
Use recursion to generate all possible combinations of balanced parentheses.
Keep track of the number of open and close parentheses used in each combination.
Return the valid combinations as an array of strings.
You are given a long type array/list ARR
of size N
, representing an elevation map. The value ARR[i]
denotes the elevation of the ith
bar. Your task is to determine th...
Calculate the total amount of rainwater that can be trapped between given elevations in an array.
Iterate through the array and calculate the maximum height on the left and right of each bar.
Calculate the amount of water that can be trapped at each bar by taking the minimum of the maximum heights on the left and right.
Sum up the trapped water at each bar to get the total trapped water for the entire array.
You are given a grid containing oranges where each cell of the grid can contain one of the three integer values:
Find the minimum time required to rot all fresh oranges adjacent to rotten oranges.
Create a queue to store the coordinates of rotten oranges and perform BFS to rot adjacent fresh oranges.
Track the time taken to rot all fresh oranges and return -1 if not all fresh oranges can be rotten.
Update the grid with the new state of oranges after each second.
Handle edge cases such as empty grid or no fresh oranges present.
Example...
Round duration - 60 Minutes
Round difficulty - Medium
This was a standard DS/Algo round where I was given 2 questions to solve under 60 minutes. I was able to come up with the optimal approach for both the questions and then at the end of the interview I was also asked the famous Die Hard Water Puzzle.
Design a queue data structure following the FIFO (First In First Out) principle using only stack instances.
Your task is to complete predefined functions t...
Implement a queue using stacks following FIFO principle.
Use two stacks to simulate a queue.
For enQueue operation, push elements onto stack1.
For deQueue operation, if stack2 is empty, pop all elements from stack1 and push onto stack2, then pop from stack2.
For peek operation, if stack2 is empty, pop all elements from stack1 and push onto stack2, then return top of stack2.
For isEmpty operation, check if both stack1 and st...
You are provided with 'N' intervals, each containing two integers denoting the start time and end time of the interval.
Your task is to merge all overlapping intervals a...
Merge overlapping intervals and return sorted list of merged intervals by start time.
Sort the intervals based on start time.
Iterate through intervals and merge overlapping ones.
Return the merged intervals in sorted order.
Round duration - 60 Minutes
Round difficulty - Medium
This round had 2 coding questions - first one related to Binary Tree and the second one was a simple question from Bit Manipulation. This was followed by some questions from OOPS.
You are given a Binary Tree, and you need to determine the length of the diameter of the tree.
The diameter of a binary tree is the length of the longest path betwe...
The task is to find the diameter of a binary tree, which is the length of the longest path between any two end nodes in the tree.
Traverse the tree to find the longest path between two nodes.
Keep track of the maximum diameter found during traversal.
The diameter may not necessarily pass through the root node.
Consider both left and right subtrees while calculating the diameter.
Example: For input 1 2 3 4 -1 5 6 -1 7 -1 -1
Determine if it is possible to reorder the digits of a given integer 'N' such that the resulting number is a power of two. The leading digit must not be zero.
The fir...
The problem involves determining if it is possible to reorder the digits of a given integer to form a power of 2.
Iterate through all possible permutations of the digits of the given integer.
Check if any of the permutations form a power of 2.
Return 1 if a valid permutation is found, else return 0.
Advantages of OOP include code reusability, modularity, and easier maintenance.
Code reusability: Objects can be reused in different parts of the program, reducing redundancy.
Modularity: OOP allows for breaking down complex problems into smaller, more manageable parts.
Easier maintenance: Changes to one part of the codebase do not necessarily affect other parts, making maintenance easier.
Encapsulation: Data hiding and ab...
Access specifiers define the level of access to class members in Object-Oriented Programming.
Access specifiers include public, private, protected, and default
Public members are accessible from outside the class
Private members are only accessible within the class
Protected members are accessible within the class and its subclasses
Default access is when no access specifier is specified
Round duration - 30 Minutes
Round difficulty - Easy
This was my last round and I hoped it to go good just like the other rounds. The interviewer was very straight to point
and professional. The interview lasted for 30 minutes.
Tip 1 : Must do Previously asked Interview as well as Online Test Questions.
Tip 2 : Go through all the previous interview experiences from Codestudio and Leetcode.
Tip 3 : Do at-least 2 good projects and you must know every bit of them.
Tip 1 : Have at-least 2 good projects explained in short with all important points covered.
Tip 2 : Every skill must be mentioned.
Tip 3 : Focus on skills, projects and experiences more.
Queue can be implemented using two stacks by maintaining the order of elements in the stacks.
Create two stacks, let's call them stack1 and stack2
When an element is enqueued, push it to stack1
When an element is dequeued, pop all elements from stack1 and push them to stack2
Pop the top element from stack2 and return it as the dequeued element
If stack2 is empty, repeat step 3
To get the front element of the queue, peek the
Left join returns all records from left table and matching records from right table. Full outer join returns all records from both tables.
Left join is used to combine two tables based on a common column.
In left join, all records from the left table are returned along with matching records from the right table.
If there is no match in the right table, NULL values are returned.
Example: SELECT * FROM table1 LEFT JOIN table...
Magic functions are special methods in PHP that start with __. Autoloading is a way to automatically load classes.
Magic functions are used to handle certain events in PHP, such as object creation or property access.
Autoloading allows PHP to automatically load classes when they are needed, without requiring manual includes.
Magic functions can be used in conjunction with autoloading to dynamically load classes or handle
Given three sorted arrays, find common elements.
Create three pointers to traverse each array
Compare the elements at the pointers and move the pointer of the smallest element
If all pointers point to the same element, add it to the result and move all pointers
Repeat until any pointer reaches the end of its array
Check if a number is a power of 2 or not.
A power of 2 has only one bit set in its binary representation.
Use bitwise AND operator to check if the number is a power of 2.
If n is a power of 2, then n & (n-1) will be 0.
Event bubbling is the propagation of an event from the innermost child element to the outermost parent element.
Events triggered on a child element will also trigger on its parent elements
The event travels up the DOM tree until it reaches the document object
Can be stopped using event.stopPropagation()
Can be useful for event delegation
The .on('click',function() is a more flexible method than .click(function())
The .on() method can handle multiple events and selectors
The .click() method can only handle one event and one selector
The .on() method can also handle dynamically added elements
The .click() method cannot handle dynamically added elements
Function to check if two strings are anagram or not
Create two character arrays from the strings
Sort the arrays
Compare the sorted arrays
Function to determine the order of integers in an array.
Check first and last element to determine if increasing or decreasing
Check for inflection point to determine if order changes
Return order type as string
Optimize images, minify code, reduce HTTP requests, use caching, and lazy loading.
Optimize images using compression and appropriate file formats
Minify code to reduce file size and improve load times
Reduce HTTP requests by combining files and using sprites
Use caching to store frequently accessed data locally
Implement lazy loading to defer loading of non-critical resources
Design a database schema for a movie site with user ratings and recommendations.
Create tables for movies, users, ratings, and recommendations
Use foreign keys to link tables
Include columns for movie genre and user watch history
Algorithm for recommendations can use user watch history and ratings to suggest similar movies
Function to simulate dice roll with equal probability without using random function
Use a toss function that returns either 0 or 1 with equal probability
Call the toss function 3 times and convert the result to a binary number
If the binary number is greater than 0 and less than or equal to 6, return it
If the binary number is greater than 6, repeat the process
Query to fetch duplicate email from table
Use GROUP BY and HAVING clause to filter out duplicates
SELECT email, COUNT(*) FROM table_name GROUP BY email HAVING COUNT(*) > 1;
This will return all the duplicate emails in the table
I applied via Campus Placement
Center Manager
261
salaries
| ₹0 L/yr - ₹0 L/yr |
Associate Center Manager
179
salaries
| ₹0 L/yr - ₹0 L/yr |
Assistant Manager
61
salaries
| ₹0 L/yr - ₹0 L/yr |
Operations Manager
56
salaries
| ₹0 L/yr - ₹0 L/yr |
Trainer
44
salaries
| ₹0 L/yr - ₹0 L/yr |
Growfit
HealthifyMe
Tata 1mg
Practo