Obróć macierz o 90° w prawo

Zadanie 10 z 14 · rozdział 13Trudność: 2 z 3macierzetranspozycja

Treść zadania

Wczytaj kwadratową macierz n×n i wypisz ją po obrocie o 90° zgodnie z ruchem wskazówek zegara.

Dane wejściowe

  • 1. linia: n
  • następnie n linii po n liczb całkowitych

Dane wyjściowe

n linii obróconej macierzy.

Ograniczenia

  • 1 ≤ n ≤ 20

Uwagi

  • Pierwszy wiersz wyniku to pierwsza kolumna macierzy czytana od dołu do góry. Obrót można też uzyskać, transponując macierz i odwracając każdy jej wiersz.

Przykład

Wejście
3
1 2 3
4 5 6
7 8 9
Wyjście
7 4 1
8 5 2
9 6 3
Zasady obowiązujące w rozdziale 13

Zadania w tym rozdziale ćwiczą pracę z listami dwuwymiarowymi (macierzami): tworzenie, wczytywanie, przechodzenie po wierszach i kolumnach oraz przekształcanie.
Każde zadanie (oraz każdy podpunkt) jest osobnym, niezależnym programem: czyta standardowe wejście (stdin) i wypisuje wynik na standardowe wyjście (stdout).

Konwencje wspólne:

  • Dane wczytuj dokładnie w kolejności podanej w sekcji Wejście.
  • Wiersz macierzy na wejściu to jedna linia z liczbami oddzielonymi spacjami — wczytaj całą linię i rozbij ją po spacjach (input().split()).
  • W wyjściu macierzy: każdy wiersz w osobnej linii, elementy oddzielone pojedynczą spacją.
  • 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.

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 uruchomiono
Wejście
2
1 2
3 4
Oczekiwane wyjście
3 1
4 2

Test 2

Nie uruchomiono
Wejście
3
2 0 1
3 4 5
6 7 8
Oczekiwane wyjście
6 3 2
7 4 0
8 5 1

Test 3

Nie uruchomiono
Wejście
1
9
Oczekiwane wyjście
9

Test 4

Nie uruchomiono
Wejście
4
1 2 3 4
5 6 7 8
9 10 11 12
13 14 15 16
Oczekiwane wyjście
13 9 5 1
14 10 6 2
15 11 7 3
16 12 8 4

Test 5

Nie uruchomiono
Wejście
2
-1 0
0 -1
Oczekiwane wyjście
0 -1
-1 0
Uruchom z własnymi danymi