Arcesium interview experience Real time questions & tips from candidates to crack your interview

Arcesium
upvote
share-icon
5 rounds | 10 Coding problems

Interview preparation journey

expand-icon
Journey
First 2 years solved a lot of CP problems and given many contests, done some web and android dev projects. I find joy in participating in online coding contests and tackling challenging problems with enthusiasm. My journey in the realm of competitive programming has earned me commendable profiles on various esteemed platforms, including Codeforces, CodeChef, and AtCoder. Moreover, I take immense pride in being recognized as an expert on Codeforces and an ICPC regionalist representing my college. Beyond my love for coding, I possess a strong skill set as a developer. My extensive experience in this domain is enriched by engaging internships at prominent companies like Arcesium. However, what truly sets me apart is a unique blend of technical proficiency and exceptional soft skills that empower me to thrive in a team environment. Some highlights of my soft skills include: Effective Communication: I excel in conveying complex technical concepts in a clear and concise manner, making discussions and collaborations fruitful for all team members. Adaptability: Throughout my academic and professional journey, I have demonstrated the ability to adapt swiftly to dynamic project requirements and ever-evolving technological landscapes. Problem-Solving Mindset: My approach to problem-solving extends beyond coding challenges. I apply a methodical and analytical mindset to overcome obstacles in both technical and non-technical scenarios. Team Player: My experiences as an ICPC regionalist and intern in web development have honed my ability to collaborate harmoniously within teams, fostering a positive and supportive work environment. Creativity: Whether it's crafting innovative web solutions or designing engaging competitive programming challenges, I bring a creative flair to everything I do. Leadership Potential: I have actively taken initiatives in group projects and coding competitions, leading and motivating team members towards shared goals. Apart from my academic and professional pursuits, I have a diverse range of interests. I find great pleasure in exploring the world of documentaries and interviews, nurturing a thirst for knowledge beyond my immediate domain. Additionally, in my leisure time, I indulge in online PC gaming, with Valorant being one of my favorite virtual playgrounds.
Application story
I applied in Arcesium on 18th July 2021(III rd year in B.Tech) and coding round was scheduled on 23rd july 2021, 27th is date of interviews/selection
Why selected/rejected for the role?
According to interviewers i was their first selection because i answered all the questions which they asked and they were well satisfied with approaches i used
Preparation
Duration: 1 year
Topics: DATA STRUCTURES AND ALGORITHMS C++, JAVA Git and Github REACT AND STATE MANAGEMENT CONCEPTS(Mobx, Redux) SPRING FRAMEWORK(Spring IOC, Spring Beans, Dependency Injections, JPA and Hibernate, Mybatis, Spring Security) UNIT TESTING(MOCKMVC/MOC KITO) WEB DEVELOPMENT ( HTML , CSS, JavaScript , BOOTSTRAP , NODE.JS , MySQL + ALL BASIC STUFF) Operating Systems, Computer Networks, Database Management Systems ANDROID DEVELOPMENT (LIVEDATA, VIEW BINDING, ROOM DATABASE, JETPACK LIBRARIES ..ETC)
Tip
Tip

Tip 1 : Have self motivation and solve problems regularly
Tip 2 : If you are able to solve some level of problems then please do increase the rating/level
Tip 3 : Have some basic projects and just ensure that you full idea if you mention that in your resume

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

Tip 1: Mention some key points in resume and highlight main things
Tip 2: Write only what you have done/achieved and don't write something which can prove you wrong in time of interviews

Interview rounds

01
Round
Medium
Online Coding Interview
Duration90
Interview date23 Jul 2021
Coding problem4

2 coding problems, some apptitude and programming questions

1. Given that there are N books and M students. Also given are the number of pages in each book in ascending order. The task is to assign books in such a way that the maximum number of pages assigned to a student is minimum, with the condition that every student is assigned to read some consecutive books. Print that minimum number of pages.

Moderate
10m average time
90% success
0/80
Asked in companies
ArcesiumZSCredit Suisse

Ayush is studying for ninjatest which will be held after 'N' days, And to score good marks he has to study 'M' chapters and the ith chapter requires TIME[i] seconds to study. The day in Ayush’s world has 100^100 seconds. There are some rules that are followed by Ayush while studying.

1. He reads the chapter in a sequential order, i.e. he studies i+1th chapter only after he studies ith chapter.

2. If he starts some chapter on a particular day he completes it that day itself.

3. He wants to distribute his workload over 'N' days, so he wants to minimize the maximum amount of time he studies in a day.

Your task is to find out the minimal value of the maximum amount of time for which Ayush studies in a day, in order to complete all the 'M' chapters in no more than 'N' days.

For example

if Ayush want to study 6 chapters in 3 days and the time that each chapter requires is as follows:
Chapter 1 = 30
Chapter 2 = 20
Chapter 3 = 10
Chapter 4 = 40
Chapter 5 = 5
Chapter 6 = 45

Then he will study the chapters in the following order 

| day 1 : 1 , 2 | day 2 : 3 , 4 | day 3 : 5 , 6 |
Here we can see that he study chapters in sequential order and the maximum time to study on a day is 50, which is the minimum possible in this case.
Problem approach

Way to solve this problem is to use Binary Search, based on this idea:

Case 1: When no valid answer exists.

If the number of students is greater than the number of books (i.e, M > N), In this case at least 1 student will be left to which no book has been assigned.
Case 2: When a valid answer exists.

The maximum possible answer could be when there is only one student. So, all the book will be assigned to him and the result would be the sum of pages of all the books.
The minimum possible answer could be when number of student is equal to the number of book (i.e, M == N) , In this case all the students will get at most one book. So, the result would be the maximum number of pages among them (i.e, maximum(pages[])).
Hence, we can apply binary search in this given range and each time we can consider the mid value as the maximum limit of pages one can get. And check for the limit if answer is valid then update the limit accordingly.

Try solving now

2. Given an array arr[] of size N. In each operation, pick an array element X and remove all array elements in the range [X – 1, X + 1]. The task is to find the maximum number of steps required such that no coins left in the array.

Problem approach

1. Initialize a variable, say cntSteps to store the maximum count of steps required to remove all the coins from the arr[] array.
2. Create a map, say Map to store the frequency of elements of the arr[] array in ascending order.
Initialize a variable, say Min to store the smallest element of the Map.
3. Traverse the Map and in each traversal remove the Min and (Min + 1) from Map and also increment the value of cntSteps by 1.
4. Finally, print the value of cntSteps.

3.

Which of the following is a structured programming technique that graphically represents the detailed steps required to solve a program?

Problem approach

Ans: Flowchart

4.

Which of the following data structures can be used to implement queues?
1. Stack
2. Array
3. LinkedList
4. All of the Above

Problem approach

All of the above

02
Round
Easy
Face to Face
Duration45
Interview date27 Jul 2021
Coding problem1

1. Given a text txt[0..n-1] and a pattern pat[0..m-1], write a function search(char pat[], char txt[]) that prints all occurrences of pat[] in txt[]. You may assume that n > m.

Problem approach

implemented in 1 way(suffix tree) and explained how to do with other algos(z-algo, KMP) and what's the difference

03
Round
Easy
Face to Face
Duration45
Interview date27 Jul 2021
Coding problem3

1.

Difference between LRU and LFU Page Replacement Algorithm. What is LRU Page Replacement Algorithm? Asked some more related problems

Problem approach

Tip 1:
Tip 2:
Tip 3:

2. Given a Binary Search Tree (BST) with a root node and a target value u, break the tree into two Balanced binary search tree such that one subtree has nodes that are all greater or equal to the target value u, while the other subtree has all nodes that are lesser than the target value u. It's not necessarily the case that the tree contains a node with value u.

Moderate
25m average time
75% success
0/80
Asked in companies
ArcesiumSalesforceMAQ Software

You have been given a root node of a binary search tree and a positive integer ‘K’. You need to split the given BST into two BST such that first BST has all nodes with values less than or equal to the given value ‘K’, and second tree has all nodes with values greater than the given value ‘K’.

Note:

1. A binary search tree is a binary tree data structure, with the following properties
    a. The left subtree of any node contains nodes with the value less than the node’s value.
    b. The right subtree of any node contains nodes with the value equal to or greater than the node’s value.
    c. Right, and left subtrees are also binary search trees.
2. It is guaranteed that all nodes in the given tree will have distinct positive integral values .
3. The given tree may or may not contain a node of value equal to the given value ‘K’.

Example, below the tree, is a binary search tree.

1

Below the tree is not a BST as node ‘2’ is less than node ‘3’ but ‘2’ is the right child of ‘3’, and node ‘6’ is greater than node ‘5’ but it is in the left subtree of node ‘5’.

1

Note:

1. You have to split the given tree in such a way that the structure of both returned trees is similar to the originally given tree, i.e. if a parent node ‘P’ and child node ‘C’ lies on the same tree after splitting, then ‘C must be the same child of ‘P’.
2. If there is no valid tree, then return ‘NULL’ node in its place.
Problem approach

This is a standard DSA problem so implemented directly as i was already aware of this problem

Try solving now

3.

Imagine you are tasked with designing a parking lot system. Consider the following requirements:

The parking lot has multiple levels, each containing multiple spots.
There are different types of spots (compact, regular, handicapped, etc.).
Cars of different sizes (small, medium, large) can park in the parking lot.
The system should be able to find an available spot for a given car size.

Problems:
1. Implement methods for cars entering and leaving the parking lot.
2. Provide functionality to check the current occupancy and availability of spots on each level.

Problem approach

Tip 1:
Tip 2:
Tip 3:

04
Round
Easy
Face to Face
Duration45
Interview date23 Jul 2021
Coding problem1

1. Given an m x n binary matrix filled with 0's and 1's, find the largest square containing only 1's and return its area.

Moderate
10m average time
90% success
0/80
Asked in companies
Urban Company (UrbanClap)FreshworksBNY Mellon

You have been given a non-empty grid ‘MAT’ consisting of only 0s and 1s. Your task is to find the area of maximum size square sub-matrix with all 1s.

If there is no such sub-matrix, print 0.

For example, for the following grid:

Input

The area of the largest square submatrix with all 1s is 4.
Problem approach

int maximalSquare(vector> &matrixOfChars) {
const auto h = matrixOfChars.size();
const auto w = matrixOfChars[0].size();

unsigned short matrix[300 * 300];

{
auto destIt = matrix;
for (auto srcIt = matrixOfChars.begin(); srcIt < matrixOfChars.end(); ++srcIt, destIt += w) {
std::transform(std::execution::par_unseq, srcIt->begin(), srcIt->end(), destIt,
[](const auto &x) { return x - '0'; });
}
}

unsigned short maxSize = *std::max_element(std::execution::par_unseq, matrix, matrix + w);

for (auto it = matrix + w; it != matrix + w * h; it += w) {
maxSize = std::max(maxSize, *it);
}

for (auto rowIt = matrix + w; rowIt != matrix + w * h; rowIt += w) {
for (auto colIt = rowIt + 1; colIt != rowIt + w; ++colIt) {
const unsigned int minOfNeighbours = std::min(
std::min(
*(colIt - w - 1),
*(colIt - w)),
*(colIt - 1));
const unsigned short oldValue = *colIt;
const unsigned short newSize = oldValue
? (minOfNeighbours + 1)
: 0;
*colIt = newSize;
maxSize = std::max(maxSize, newSize);
}
}

const auto result = int(maxSize) * int(maxSize);

return result;
}

Try solving now
05
Round
Easy
HR Round
Duration45
Interview date27 Jul 2021
Coding problem1

1.

Problem approach

Tip 1:
Tip 2:
Tip 3:

Here's your problem of the day

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

Skill covered: Programming

How do you remove whitespace from the start of a string?

Choose another skill to practice
Similar interview experiences
company logo
SDE - Intern
4 rounds | 5 problems
Interviewed by Arcesium
969 views
0 comments
0 upvotes
company logo
SDE - 2
3 rounds | 4 problems
Interviewed by Arcesium
0 views
0 comments
0 upvotes
company logo
SDE - 1
3 rounds | 3 problems
Interviewed by Arcesium
0 views
0 comments
0 upvotes
company logo
SDE - 1
3 rounds | 4 problems
Interviewed by Arcesium
1339 views
0 comments
0 upvotes