I recently gave the ARM Online Assessment and wanted to share the pattern and all the questions I can remember. Hopefully this helps others preparing for ARM.
The overall structure was quite similar to the Texas Instruments OA pattern.
Total Duration: 90 minutes
We were given:
S, E, KWe had to find numbers in the inclusive range:
[S, E]such that the number could be represented as the sum of K consecutive positive integers and also satisfied the required divisibility condition with K.
We then had to return/count the numbers satisfying the conditions.
The main idea involved understanding when a number can be represented as:
x + (x+1) + (x+2) + ... + (x+K-1)for some positive integer x.
The sum becomes:
K*x + K*(K-1)/2So this question was mainly based on:
We were given an integer:
1 <= X <= 1000and had to return an encoded alphabet character.
Examples I remember:
1 -> C
2 -> FThe alphabet positions were considered as:
A = 1
B = 2
C = 3
...The encoding logic involved adding something like:
2 * Xto the original value.
So:
X = 1
1 + 2*1 = 3
3 -> Cand:
X = 2
2 + 2*2 = 6
6 -> FFor larger values, the alphabet encoding had to be handled according to the rule given in the question.
If the 18th day of a month is Tuesday, what day of the week was the 1st day of that month?
There were around 2–3 questions based on a graph.
Questions involved interpreting values, percentages, comparisons, etc.
Given:
a × b = oddWhich of the following is true?
Options were similar to:
a + b is evena - b is evena and b are both oddFind the next term:
Z2, X4, V8, T16, ___ ?This involved identifying patterns in both:
There were around 4–5 questions based on a single circular arrangement.
Several people were seated in a circle and we had to determine:
A question was based on the age difference between S and R.
The information was something similar to:
One question was based on:
So revise formulas:
Downstream = Boat Speed + Stream Speed
Upstream = Boat Speed - Stream SpeedA probability question asked about forming a three-digit number satisfying conditions similar to:
We had to find the probability of such a number.
A sequence of numbers was given and we had to construct an AVL Tree.
The question asked:
How many rotations are required while inserting the given numbers?
Important concepts:
A postfix expression was given similar to:
23 16 72 51 -3 1 6 1 7 8 + - + *and we had to calculate the final output.
This required evaluating the postfix expression using a stack.
A star pattern was given similar to:
*
***
*****
***
*Some code was already provided and we had to select the missing line of code needed to generate the pattern correctly.
So output tracing and loop conditions were important.
There was an output-based question on Dynamic Programming.
A code snippet was given and we had to trace the DP array/table and determine the final output.
There were around 2–3 more output-based questions.
These required carefully tracing the program rather than writing code.
Good topics to revise:
There were questions based on Circular Queue.
Important concepts:
front
rear
enqueue
dequeue
overflow
underflowand conditions such as:
(rear + 1) % size == frontfor detecting a full circular queue.
The biggest challenge was time management.
The aptitude section had:
15 questions in 20 minutesso there was not much time to spend on any single question.
The technical section had several questions where knowing the concept was not enough — you also needed to quickly trace code, evaluate expressions, or construct data structures.
The coding section had 40 minutes for 2 questions, and both questions seemed much easier once the mathematical observation or encoding logic was identified.
For anyone preparing for ARM, I would especially recommend practicing:
Aptitude + C/C++ output questions + AVL Trees + Stack/Postfix + Circular Queue + basic DP + mathematical coding problems.
These are all the questions I can currently remember from the OA.