Adobe Systems (MTS-2) [Aug 2019] [Offered]

adobe logo
adobe
MTS-2Noida Sector 132, IndiaOffer
December 15, 20190 reads

Summary

I interviewed for the MTS-2 role at Adobe Systems in Noida, India, in August 2019, after being referred by a friend. The process involved five comprehensive rounds focusing on projects and diverse problem-solving, and I ultimately received an offer.

Full Experience

My interview experience for the MTS-2 role at Adobe Systems in Noida, India, was quite positive, with very friendly interviewers throughout. I was referred by a friend for this position.

Round 1 (40-50 min)

  • The round started with a discussion about my projects.
  • I was given a problem: Given an mn matrix and q queries (a b c d, where (a,b) are top-left and (c,d) are bottom-right coordinates), find the sum of elements in the rectangle for each query.
  • Another problem involved a factory with 10 machines, all producing 100g balls except one defective machine producing 90g balls. I had to find the minimum weighings required to identify the defective machine using a weighing machine.

Round 2 (40-50 min)

  • Again, the round began with a discussion about my projects.
  • I was asked to find the next largest N-bit binary number with the same number of set bits as the original (e.g., 101 -> 110).
  • A problem involved rearranging an array of 2n numbers (a1...an, b1...bn) into a1,b1,a2,b2,...an,bn without using extra space.
  • There were conceptual questions: What is a constructor? What is a destructor? Follow-up: How to keep track of live objects of a class without using global variables.
  • Another array manipulation problem: Given an array a1...an and an index i (1 <= i <= n), reverse the array around that index in-place (e.g., a1..a6, i=3 -> a4,a5,a6,a1,a2,a3).

Round 3 (40-50 min)

  • This round also started with a discussion about my projects.
  • I was tasked with a problem: Given a binary search tree, multiply all elements by -1, and then arrange the elements to again form a binary search tree.
  • I was asked to list all sorting algorithm names and their time complexities. The follow-up question was: Given N sorted elements and M elements being added (M << N), which sorting algorithm would I prefer and why?

Round 4 (40-50 min)

  • The first part of this round was a discussion about my projects.
  • I was given a binary tree problem: Remove all nodes whose subtree has a sum less than K.
  • Another problem involved finding the maximum number of gems I could collect from 'n' hills, where the i-th hill has 'ai' gems, and I couldn't collect from adjacent hills.
  • A classic brain teaser: 100 ants are sprinkled on a rod, moving at 1 m/s and reversing direction on collision. Find the total time after which all ants will fall from the rod.

Round 5 (10-15 min)

  • The final round was short and focused on a single problem: Write a mathematical expression to find the average of 4 integer numbers, avoiding integer overflow and only returning the integer part of the average (e.g., 3,3,4,3 -> 3).

Interview Questions (12)

Q1
Matrix Rectangle Sum Queries
Data Structures & AlgorithmsMedium

Given an m*n matrix and q queries. Each query is of the format 'a b c d', where (a,b) are top-left coordinates and (c,d) are bottom-right coordinates. For each query, find the sum of elements within the rectangle bounded by these coordinates.

Q2
Find Defective Machine with Lighter Balls
OtherMedium

A factory has 10 machines, each producing balls weighing 100g. One machine is defective and produces balls weighing 90g. Given a weighing machine, what is the minimum number of weighings required to find the defective machine?

Q3
Next Largest Binary Number with Same Set Bits
Data Structures & AlgorithmsMedium

Given an N-bit binary number, find the next largest binary number that has the same number of set bits as the original number. For example: 101 --> 110.

Q4
Interleave Two Halves of an Array In-place
Data Structures & AlgorithmsHard

Given an array of 2*n numbers in the format a1,a2,....an,b1,b2,....bn. Rearrange the elements of the array to be a1,b1,a2,b2,a3,b3,.....an,bn, without using extra space.

Q5
Constructors, Destructors, and Live Object Tracking
OtherMedium

Explain what a constructor is and what a destructor is. As a follow-up, how would you keep track of live objects of a class without using global variables?

Q6
Rotate Array Around Index In-place
Data Structures & AlgorithmsMedium

Given an array a1,a2,......an and an index 1 <= i <= n. Reverse (or rotate) the array around that index. For example, if the array is a1, a2, a3, a4, a5, a6 and i = 3, the output should be a4, a5, a6, a1, a2, a3. The operation must be done without using extra space.

Q7
Transform BST by Multiplying Elements and Reforming BST
Data Structures & AlgorithmsMedium

Given a binary search tree, multiply all its elements by -1. Then, rearrange the elements to form a new binary search tree.

Q8
Sorting Algorithms and Efficient Insertion into Sorted Array
Data Structures & AlgorithmsMedium

List all common sorting algorithms and their time complexities. As a follow-up, if you have N sorted elements and M new elements are added (where M is much smaller than N), which sorting algorithm would you prefer to re-sort the array, and why?

Q9
Remove Nodes with Subtree Sum Less Than K
Data Structures & AlgorithmsMedium

Given a binary tree. Remove all nodes whose subtree has sum less than K.

Q10
Max Gems from Non-Adjacent Hills
Data Structures & AlgorithmsMedium

There are 'n' hills on a mountain, and the i-th hill contains 'ai' gems. You can collect all gems from a hill, but you cannot collect gems from adjacent hills. Find the maximum number of gems you can collect.

Q11
Ants on a Rod
OtherHard

100 ants are sprinkled on a rod. Ants can move at a speed of 1 m/s. Ants have a peculiar property: they reverse their direction upon collision. Find the total time after which all ants will fall from the rod.

Q12
Average of Four Integers Avoiding Overflow
OtherEasy

Write a mathematical expression to find the average of four integer numbers, ensuring integer overflow is avoided. Only the integer part of the average is required. For example, for 3, 3, 4, 3, the average is 3.

Discussion (0)

Share your thoughts and ask questions

Join the Discussion

Sign in with Google to share your thoughts and ask questions

No comments yet

Be the first to share your thoughts and start the discussion!