Problem
Original anzeigen (Englisch)Drehe die Liste um steps Positionen nach rechts: Das letzte Element wird steps-mal an den Anfang verschoben.
Implementiere rotate_right(numbers, steps).
Eingabe
numbers: Die Liste der Ganzzahlen. steps: Wie viele Positionen rotiert werden sollen.
Ausgabe
Gib die rotierte Liste zurück.
Einschränkungen
0 ≤ Länge ≤ 100.000; 0 ≤ steps ≤ 10⁹
Beispiele
Eingabe:
steps = 2
numbers = [1, 2, 3, 4, 5]
Erwartete Ausgabe:
expected = [4, 5, 1, 2, 3]
Eingabe:
long long steps = 2;
std::vector<long long> numbers = {1, 2, 3, 4, 5};
Erwartete Ausgabe:
std::vector<long long> expected = {4, 5, 1, 2, 3};
Eingabe:
long steps = 2;
long[] numbers = new long[] {1, 2, 3, 4, 5};
Erwartete Ausgabe:
long[] expected = new long[] {4, 5, 1, 2, 3};
Erläuterung
Zwei Rechtsrotationen: [5, 1, 2, 3, 4], dann [4, 5, 1, 2, 3].
Eingabe:
steps = 3
numbers = [1, 2, 3]
Erwartete Ausgabe:
expected = [1, 2, 3]
Eingabe:
long long steps = 3;
std::vector<long long> numbers = {1, 2, 3};
Erwartete Ausgabe:
std::vector<long long> expected = {1, 2, 3};
Eingabe:
long steps = 3;
long[] numbers = new long[] {1, 2, 3};
Erwartete Ausgabe:
long[] expected = new long[] {1, 2, 3};
Erläuterung
Rotation um die Listenlänge ergibt wieder die Ausgangsliste: [1, 2, 3].
Referenzen
Diese Aufgabe wurde für CodeUtility angepasst. Beachte die oben genannten Vorgaben und Einschränkungen.