Замена каждого элемента на максимальный справа

Дан массив arr. Для каждого элемента массива нужно заменить его на наибольший элемент среди всех элементов, находящихся правее него. Последний элемент массива необходимо заменить числом -1.
После выполнения преобразований нужно вернуть изменённый массив.
Пример 1
Вход: arr = [17,18,5,4,6,1]
Выход: [18,6,6,6,1,-1]
Объяснение: Идя справа: maxRight для каждой позиции даёт итоговый массив [18,6,6,6,1,-1].
Пример 2
Вход: arr = [5]
Выход: [-1]
Объяснение: Нет правых элементов, поэтому элемент заменяется на -1 (нет максимума справа).
Пример 3
Вход: arr = [2,3,1,-1]
Выход: [-1,3,3,2]
Объяснение: Идём справа налево, сохраняем максимальные справа: результат замены [ -1,3,3,2 ].