# Adobe's Six Interview Rounds and NSIT's Shefali Srivastava sails through !

Recently, Adobe visited NSIT campus for its oncampus recruitment drive.Coding Blocks Team Congratulates **Shefali Srivastva**, a sincere and hard-working student for cracking Adobe, and thank her for sharing her interview experiences with the student community.

**ROUND 1**

**Aptitude round** - 45 questions to be solved in 50 minutes. LR, DI and Quant. Quant section relatively easier. Start from the bottom. I solved 36/45 confidently. There was no negative marking.

**Coding round** on HackerRank - 90 minutes to solve 3 coding questions. 1 was pure brute force with a direct formula, 2nd on DP and 3rd on backtracking. I remember two questions -

**Q1:** Given a string consisting of lowercase letters and ‘?’ Character, find out if the given string is GOOD, BAD or MIXED.

A string is GOOD if no 5 consonants are adjacent and no 3 vowels are adjacent. A string is BAD if it no not good. A string is MIXED if it can be made either GOOD or BAD by changing the ‘?’ Differently.

E.g. aa? Is MIXED because ? Replaced with ‘f’ is good but replaced with ‘a’ is bad. Whereas a?b is definitely GOOD and aaag? Is definitely BAD.

**Q2:** Given an array of integers, a start value and a maximum value, every value on the array traversing from the beginning can be either added or subtracted such that at any point the result is not less than 0 and not greater than the given maximum value. Compute the maximum value that can be created from the values in the array.

```
E.g. Array - 2 1 7
Start - 3
Max - 7
3 ---> (-2) ---> 1 ---> (-1) ---> 0 ---> (+7) --> 7
```

**ROUNDS 2 - Technical Interview**

Coding questions

**Q1:** Construct a BST from Inorder and Postorder,

**Q2:** Binary Search,

**Q3:** Search and element in a sorted and rotated array using binary search,

**Q4:** Analyse the time complexity of a function

```
Fun(n)
{
If(n<=0) return;
Fun(n/3);
Fun(n/3);
Fun(n/3);
}
```

**Operating systems**

What are **threads, zombie processes, paging and segmentation**.

**OOPs**

Function Overloading and Function Overriding.

**ROUNDS 3 - Technical Interview**

**Q1:** How would you create your own whatsapp? (Answer using threads) Construct a stack using two queues.

**Q2:** In a war, 70 people lost their arms, 75 lost their eyes, 80 lost their ears and 85 lost their legs. What is the minimum number of people who did not lose anything?

**Q3:** A monkey climbs up 3 stairs while in the daytime and drops back 2 in the night. How long will it take him to reach a mark of 30.

**ROUND 4 - Technical Interview**

**Q1:** Analyse the complexity of Merge Sort. Write the code for Merge Sort

**Q2:** Replace every node of BST with the sum of all the values greater than it in the BST. Without using a reference variable.

**ROUND 5 - Technical Interview**

**Q1:** Write a sorting algorithm that uses O(N) space and O(N) time.

**Q2:** Find a node reachable from every other node in DAG.

**Q3:** In an array find 4 indices such that a[i] + a[j] = a[k] + a[l]

**ROUND 6 - HR Interview**

### Why Adobe?

Had you had 1 month of preparation more, would you have prepared better?

Which companies were you targeting at?

The selection process is tiring but keep your calm and you’ll sail through :)