Birla Pivot OA Experience
- Posted
- 26 Oct 2026
Summary
I completed Birla Pivot's online assessment, which consisted of four questions (two coding and two SQL), and I shared the problem statements here.
How it went
I recently appeared for the Birla Pivot Online Assessment (OA) and wanted to share my experience to help others preparing for the assessment.
OA Overview
The assessment consisted of 4 questions:
- 2 Coding Questions: Both CP based, but on easy side.
- 2 SQL Questions: One easy and one comparatively hard SQL question.
Question 1: Maximize Distinct Elements
An array was given, and we had to maximize the number of distinct elements by performing operations on selected indices.
For each selected index, we could either increment or decrement the corresponding array element by 1.
The objective was to maximize the number of distinct elements in the resulting array.
Question 2: SQL - Students and Subjects
Three tables were provided:
- Students: Contains student IDs and student details.
- StudentSubjects: Contains student IDs and the IDs of the subjects they study.
- Subjects: Contains subject IDs and subject names.
Task: Retrieve the subjects studied by each student by joining the three tables.
Question 3: SQL - Bond Holders and Total Cash Flow
Three tables were provided:
1. BondHolders
idname
2. Bonds
idnameannual_couponcoupons_remaining
3. BondHoldersBonds
bond_idbond_holder_id
The total cash flow for a bond was defined as:
total_cash_flow = annual_coupon * coupons_remaining
Task: Return the bond holder's name and total cash flow, considering only results where the total cash flow is greater than 10000.00. The result needed to be rounded to two decimal places.
This question involved joining multiple tables, calculating cash flow, applying a condition, and rounding the result.
Difficulty: Medium to Hard
Note: The cash flow condition applied to the combined cash flow across all bonds owned by a holder.
Question 4: Aggregate Sum Check Value
Given an integer N, define the checksum for every ordered pair (i, j), where 1 <= i, j <= N, as:
C(i, j) = (i % j) + (j % i)
We had to calculate the sum of checksum values over all ordered pairs and return the result modulo 10^9 + 7.
Formally:
Answer = sum(C(i, j)) for all 1 <= i, j <= N
modulo (10^9 + 7)
Example
For N = 3:
Pair (i, j) | Checksum |
|---|---|
| (1, 1) | 0 |
| (1, 2) | 1 |
| (1, 3) | 1 |
| (2, 1) | 1 |
| (2, 2) | 0 |
| (2, 3) | 3 |
| (3, 1) | 1 |
| (3, 2) | 3 |
| (3, 3) | 0 |
The total sum is:
0 + 1 + 1 + 1 + 0 + 3 + 1 + 3 + 0 = 10
Therefore, the output is:
10
This write-up is based on my recollection, so some details may differ from the original questions.
If anyone has solved any of these questions, knows the original problem statements, or can share a solution or relevant link, please feel free to contribute in the comments. It would be helpful for everyone preparing for similar assessments.
Hope this helps. All the best!
Questions asked (4)
- 01
Maximize Distinct Elements
Data Structures & Algorithms · Easy
An array is given. For each selected index, you may increment or decrement the element by 1. The goal is to maximize the number of distinct elements in the resulting array.
- 02
SQL - Students and Subjects
Data Structures & Algorithms · Easy
Given three tables: Students (student IDs and details), StudentSubjects (student IDs and subject IDs), and Subjects (subject IDs and names). Retrieve the subjects studied by each student by joining the three tables.
- 03
SQL - Bond Holders and Total Cash Flow
Data Structures & Algorithms · Medium
Given tables BondHolders (id, name), Bonds (id, name, annual_coupon, coupons_remaining), and BondHoldersBonds (bond_id, bond_holder_id). Compute total_cash_flow = annual_coupon * coupons_remaining for each bond. Return each bond holder's name and total cash flow, considering only results where total cash flow > 10000.00, rounded to two decimal places.
- 04
Aggregate Sum Check Value
Data Structures & Algorithms
Given an integer N, define C(i, j) = (i % j) + (j % i) for all ordered pairs (i, j) where 1 ≤ i, j ≤ N. Compute the sum of C(i, j) over all pairs and return the result modulo 10^9 + 7.