One97 Communication Limited interview experience Real time questions & tips from candidates to crack your interview

Software Engineer

One97 Communication Limited
upvote
share-icon
4 rounds | 9 Coding problems

Interview preparation journey

expand-icon
Preparation
Duration: 8 months
Topics: Data Structures, Algorithms, OOPS, Operating Systems, DBMS, Dynamic Programming, Tree, Linked List, Low level Design
Tip
Tip

Tip 1 :  Practice atleast 100-150 Medium problems and 20-30 hard problems from leetcode
Tip 2 : Try to give a short contest maybe on leetcode, codeforces or codechef as it is beneficial to crack in Online Test.
Tip 3 : Do atleast 2 projects and ask find answers like why are you choosing this tech stack? why did not you choose its alternatives Know your project in and out because they might ask you an modification in your project.

Application process
Where: Campus
Eligibility: Above 7 CGPA
Resume Tip
Resume tip

Tip 1 : Have some projects on resume.
Tip 2 : Do not put false things on resume.
Tip 3 : Try to keep a single page resume.
Tip 4 : If your CGPA is quite low do not mention it on the resume.
Tip 5 : In achievements sections only add relevant achievements. Putting achievements like "won painting competition" or "won dancing competition" wont help.

Interview rounds

01
Round
Medium
Online Coding Interview
Duration70 minutes
Interview date29 Oct 2020
Coding problem3

1. Coding Problem

We were given a number system where 0 was mapped to 9, 1 to 8, 2 to 7, 3 to 6 and so on.We were given an positive integer as an input and we had to convert it into an integer in the new number system.

Problem approach

1)Relationship for any digit x its value in new number system was 9 - x
2)Converted integer to string
3)Manipulated every index of this string using the relationship.
4)Converted this string to number and returned the answer.

2. Subtree of Another Tree

Easy
10m average time
90% success
0/40
Asked in companies
MicrosoftFacebookAmazon

Given two binary trees T and S, check whether tree S has exactly the same structure and node values with a subtree of T, i.e., check if tree S is a subtree of the tree T.

A subtree of a tree T is a tree S consisting of a node in T and all of its descendants in T. The subtree corresponding to the root node is the entire tree; the subtree corresponding to any other node is called a proper subtree.

Problem approach

For each node during pre-order traversal of s, use a recursive function isSame to validate if sub-tree started with this node is the same with t.

Try solving now

3. Binary strings with no consecutive 1s.

Moderate
25m average time
65% success
0/80
Asked in companies
AmazonWells FargoGoogle inc

You have been given an integer 'N'. Your task is to generate and return all binary strings of length 'N' such that there are no consecutive 1's in the string.


A binary string is that string which contains only ‘0’ and ‘1’.


For Example:
Let ‘N'=3, hence the length of the binary string would be 3. 

We can have the following binary strings with no consecutive 1s:
000 001 010 100 101 
Problem approach

You can easily observe pattern. It is a Fibonacci sequence 

Try solving now
02
Round
Medium
Face to Face
Duration60 minutes
Interview date2 Nov 2020
Coding problem2

This was a data structures round.

1. Longest Consecutive Sequence

Moderate
40m average time
70% success
0/80
Asked in companies
AmazonAppleUber

You are given an unsorted array/list 'ARR' of 'N' integers. Your task is to return the length of the longest consecutive sequence.

The consecutive sequence is in the form ['NUM', 'NUM' + 1, 'NUM' + 2, ..., 'NUM' + L] where 'NUM' is the starting integer of the sequence and 'L' + 1 is the length of the sequence.

Note:

If there are any duplicates in the given array we will count only one of them in the consecutive sequence.
For example-
For the given 'ARR' [9,5,4,9,10,10,6].

Output = 3
The longest consecutive sequence is [4,5,6].
Follow Up:
Can you solve this in O(N) time and O(N) space complexity?
Problem approach

I thought of two points on a number line a and b and formulated a consecutive sequence [a....b], (b*(b+1))/2-(a*(a+1))/2=n. Now we have a clearly quadratic solution by brute-forcing a and b but if we simplify it further we have (b-a+1)*(b+a) = 2*n. So now we can easily find all divisors of 2*n and satisfy the equation for which we get a>=0 and b>=0 and thus we get the answer.

Try solving now

2. Permutations

Moderate
10m average time
90% success
0/80
Asked in companies
CIS - Cyber InfrastructureCventBirdEye

A permutation is a mathematical technique that determines the number of possible arrangements in a set when the order of the arrangements matters. A string of length 'N' has 'N'! permutations.

Given an array of distinct integers, return all the possible permutations of the array.

Example:
'ARR[]' = [1, 2]

The size of the array is 2. So, the total number of permutations is 2! = 2. The possible permutations are [1, 2] (the array itself) and [2,1] where the position of element 1 in the original array is swapped with element 2 and vice-versa.   
Note:
1. All the numbers in the array are unique.

2. You can return the answer in any order.

3. The original array is also a permutation of the given array.
Problem approach

I knew the recursive solution as it is a very popular interview problem.The idea is much like the insertion sort. We start with only the first number, and pick next number from the rest of array, insert it to the front or back position of the first number, and pick the third number, insert it to front or mid or back position of the [first, second] array, and so on, until no element left.

Try solving now
03
Round
Easy
Face to Face
Duration60 minutes
Interview date2 Nov 2020
Coding problem2

This was a data structures round.

1. Is SubSequence

Easy
10m average time
90% success
0/40
Asked in companies
Quadrical AIJosh Technology GroupUnthinkable Solutions

You have been given two strings ‘STR1’ and ‘STR2’.

Your task is to find if ‘STR1’ is a subsequence of ‘STR2’.

A subsequence of a string is a new string that can be derived from the original string by deleting some characters (can be none) without changing the relative ordering of other characters.

Example:
‘ACE’ is a subsequence of ‘ABCDE’ because ‘ACE’ can be formed by deleting ‘B’ and ‘D’ without changing the relative order of characters. ‘ADB’ is not a subsequence of ‘ABCDE’ because we can get ‘ABD’ from ‘ABCDE’ but not ‘ADB’ and in ‘ADB’ relative order of ‘B’ and ‘D’ are different from original strings.
Note:
1.Strings ‘STR1’ and ‘STR2’ consists only of English uppercases.

2.Length of string ‘STR2’ will always be greater than or equal to the length of string ‘STR1’.

Example:

For example, the given ‘STR1’ is ‘BAE’ and ‘STR2’ is ‘ABADE’. 
String ‘STR1’ is a subsequence of string ‘STR2’ because ‘BAE’ can be formed by deleting ‘A’ and ‘D’ from ‘ABADE’ and the relative ordering of the characters of the string ‘ABADE’ persists.

subsequence

Problem approach

Easy problem iterate over the longer string and keep a counter for matching it with shorter string if a match occurs while iterating longer string increment the counter and if we have done iterating on the longer string if the counter value is equal to shorter string length then return true else return false.

Try solving now

2. Minimum falling path sum

Moderate
25m average time
65% success
0/80
Asked in companies
VisaProvakil

You have been given a square array 'VEC' of integers of size 'N' rows and 'N' columns. Your task is to find the minimum sum of a falling path through the square array. The number of rows and columns in the given array will be the same.

A falling path starts at any element in the first row and chooses one element from each row. The next row's choice must be in a column that is different from the previous row's column by at most one.

Example:

VEC[][]= {{5, 10}, {25, 15}}      

alt text

All the rectangles denote the possible falling paths. The rectangle with red filler is the minimum falling path with the minimum falling path sum of 20 (5+15). 
Problem approach

It was also an easy problem as I had done it before.The minimum path to get to element A[i][j] is the minimum of A[i - 1][j - 1], A[i - 1][j] and A[i - 1][j + 1]. Starting from row 1, we add the minimum path to each element. The smallest number in the last row is the minimum path sum.

Try solving now
04
Round
Easy
Face to Face
Duration25 minutes
Interview date2 Nov 2020
Coding problem2

This round was all about OS/DBMS questions.

1. Operating Systems

Three questions were asked: -

1. What is Virtual Memory?
2. What is Belady's Anomaly?
3. What is page fault?

Problem approach

Watch Sanchit Jain videos for OS

2. DBMS

Find nth maximum salary from employee table. Schema of the table is: -

 (employee_id,employee_name,employee_salary)

Problem approach

Study SQL and practice SQL queries.

Here's your problem of the day

Solving this problem will increase your chance to get selected in this company

Skill covered: Programming

What is recursion?

Choose another skill to practice
Similar interview experiences
Software Engineer
3 rounds | 12 problems
Interviewed by One97 Communication Limited
1509 views
0 comments
0 upvotes
Software Engineer
4 rounds | 8 problems
Interviewed by One97 Communication Limited
463 views
0 comments
0 upvotes
Software Engineer
3 rounds | 3 problems
Interviewed by One97 Communication Limited
457 views
0 comments
0 upvotes
Software Engineer
3 rounds | 6 problems
Interviewed by One97 Communication Limited
0 views
0 comments
0 upvotes
Companies with similar interview experiences
company logo
Software Engineer
3 rounds | 7 problems
Interviewed by Optum
7874 views
1 comments
0 upvotes
company logo
Software Engineer
5 rounds | 5 problems
Interviewed by Microsoft
9973 views
1 comments
0 upvotes
company logo
Software Engineer
2 rounds | 4 problems
Interviewed by Amazon
4310 views
1 comments
0 upvotes