You are given an array of distinct positive integers and another array that specifies the number of left circular rotations to be performed.
Rotation Rule:
- A left circular rotation shifts all elements one position to the left.
- The element at index
0moves to the last position. - All other elements shift left by one index.
Task:
For each rotation value in the rotations array:
- Perform the rotation on the original array (not cumulative).
- Determine the index of the maximum element after the rotation.
Complete the function getMaxRotationIndexes.
getMaxRotationIndexes has the following parameters:
int a[]: Array of distinct integers.int rotations[]: Array representing the number of rotations.
Returns
int[]: Array where each element represents the index of the maximum element after corresponding rotations.
Examples
01 · Example 1
a = [1, 2, 3] rotations = [1, 2, 3] return = [1, 0, 2]
For each rotation, the array [1, 2, 3] is rotated starting from the original (not cumulative):
- Rotation 1 →
[2, 3, 1], max = 3 at index 1 - Rotation 2 →
[3, 1, 2], max = 3 at index 0 - Rotation 3 →
[1, 2, 3], max = 3 at index 2
Constraints
- 1 ≤ n, m ≤ 500000
- 1 ≤ a[i] ≤
10^9 - 0 ≤ rotations[i] ≤
10^9
More Snowflake problems
- Effective Role PrivilegesPHONE SCREEN · Seen May 2026
- Closest Bathroom / Desk on a GridPHONE SCREEN · Seen May 2026
- Minimum Clicks Between Wiki PagesOA · Seen May 2026
- Minimum Index Distance Between Person and CakeOA · Seen May 2026
- Max Element Indexes After RotationsOA · Seen Mar 2026
- String Formation (Also for AI/ML Software Engineer Intern :)OA · Seen Mar 2026
- Grid Traversal (Infrastructure Automation Internship)Seen May 2025
- Horizontal Pod Autoscaler (Infrastructure Automation Internship)Seen May 2025
public int[] getMaxRotationIndexes(int[] a, int[] rotations) {
// write your code here
}a[1, 2, 3]
rotations[1, 2, 3]
expected[1, 0, 2]
sign in to submit