Rotacja w lewo / prawo
Treść zadania
Wczytaj listę n liczb całkowitych, kierunek rotacji oraz liczbę k. Przesuń cyklicznie elementy listy o k pozycji:
kierunek = 0— w lewo (pierwszy element trafia na koniec),kierunek = 1— w prawo (ostatni element trafia na początek).
Wypisz listę po rotacji.
Dane wejściowe
- 1. linia: liczba elementów
n - 2. linia:
nliczb całkowitych oddzielonych spacjami - 3. linia:
kierunek(0albo1) - 4. linia: liczba przesunięć
k
Dane wyjściowe
Jedna linia: lista po rotacji, w formacie print(lista).
Ograniczenia
- $n \ge 1$
- $k \ge 0$ (
kmoże być większe odn)
Uwagi
- Rotacja o
npozycji nie zmienia listy, więc wystarczy przesunąć ją o $k \bmod n$ pozycji.
Przykład
7 5 27 6 2 1 10 8 0 2
[6, 2, 1, 10, 8, 5, 27]
Potrzebujesz teorii?
Zasady obowiązujące w rozdziale 9
Zadania w tym rozdziale ćwiczą podstawowe operacje na listach: wczytywanie, przechodzenie pętlą, modyfikowanie elementów, wyszukiwanie i zliczanie.
Konwencje wspólne:
- Każde zadanie (i każdy podpunkt) to osobny program: czyta standardowe wejście i wypisuje wynik na standardowe wyjście.
- Lista na wejściu zajmuje dwie linie: w 1. linii jest liczba elementów
n, a w 2. linii —nliczb oddzielonych pojedynczymi spacjami. Dodatkowe dane (np. szukany klucz) są w kolejnych liniach, po jednej wartości w linii. - Taką listę wczytasz np. tak:
```python
n = int(input())
lista = [int(x) for x in input().split()]` - Gdy wynikiem jest lista, wypisz ją instrukcją
print(lista). Python wypisze ją w nawiasach kwadratowych, z elementami oddzielonymi przecinkiem i spacją, np.[4, 10, 8]. Pusta lista to[]. - Jeśli zadanie mówi „oddzielone spacją” — użyj pojedynczej spacji.
- Indeksy elementów liczymy od
0. - Program nie wypisuje komunikatów typu „Podaj liczbę:”.
Zadanie pochodzi z otwartego zbioru Nauka-Programowania (z rozwiązaniami wzorcowymi). Zgłoś błąd w treści lub testach.
Przywrócono Twój zapisany kod.
Python uruchomi się w przeglądarce przy pierwszym teście.
Kod zapisuje się automatycznie w tej przeglądarce. Tab wstawia wcięcie; aby opuścić edytor klawiaturą, naciśnij Esc, a potem Tab.
Testy
Program dostaje „Wejście” przez input() i musi wypisać „Oczekiwane wyjście”. Liczby porównywane są z tolerancją 0,01, a tekst podany w input("…") nie jest sprawdzany.
Test 1
Nie uruchomiono4 1 2 3 4 0 1
[2, 3, 4, 1]
Test 2
Nie uruchomiono5 10 20 30 40 50 1 2
[40, 50, 10, 20, 30]
Test 3
Nie uruchomiono3 7 8 9 1 0
[7, 8, 9]
Test 4
Nie uruchomiono1 42 0 5
[42]
Test 5
Nie uruchomiono4 1 2 3 4 1 6
[3, 4, 1, 2]
Test 6
Nie uruchomiono6 1 2 3 4 5 6 0 8
[3, 4, 5, 6, 1, 2]