Tác giả:
Dạng bài
Ngôn ngữ cho phép
Assembly, Awk, C, C#, C++, Clang, Cobol, D, Groovy, Haskell, JS, Java, Kotlin, Lua, Node JS, OCaml, ObjectiveC, Output, PHP, Pascal, Perl, Prolog, Pypy, Pypy 3, Python, Ruby, Rust, Scala, Scratch, Swift
Điểm: 900 (p) Thời gian: 1.0s Bộ nhớ: 256M Input: bàn phím Output: màn hình

Alice có bảng số \(A\) kích thước \(3 \times 4\). Các hàng được đánh số từ \(1\) đến \(3\) từ trên xuống dưới, các cột được đánh số từ \(1\) đến \(4\) từ trái sang phải. Ô nằm giao ở hàng \(i\) \((1 \leq i \leq 3)\) và cột \(j\) \((1 \leq j \leq 4)\) được gọi là ô \((i, j)\) và ban đầu chứa số \(a_{i, j}\).

Alice đã thực hiện liên tục \(k\) phép biến đổi, mỗi phép thuộc một trong hai loại dưới đây để nhận được bảng số \(B\).

  • Loại \(1\): Chọn hình vuông kích thước \(3 \times 3\) bên trái và quay theo chiều kim đồng hồ (xem Hình \(1\)).
  • Loại \(2\): Chọn hình vuông kích thước \(3 \times 3\) bên phải và quay ngược chiều kim đồng hồ (xem Hình \(2\)).

    Yêu cầu: Cho dãy \(k\) phép biến đổi, hãy xác định bảng \(B\).

Input

  • Ba dòng đầu, mỗi dòng chứa bốn số nguyên dương mô tả bảng \(A\) (các số không vượt quá \(100\));
  • Dòng tiếp theo chứa số nguyên \(k\) \((k \leq 100)\);
  • Dòng tiếp theo chứa \(k\) số nguyên, mỗi số bằng \(1\) (Loại \(1\)) hoặc \(2\) (Loại \(2\)) mô tả dãy biến đổi.

Output

  • Gồm ba dòng, mỗi dòng chứa bốn số nguyên dương mô tả bảng \(B\).

Scoring

  • Subtask \(1\) (\(50\%\) số điểm): \(k = 1\).
  • Subtask \(2\) (\(50\%\) số điểm): không có rằng buộc gì thêm.

Example

Test 1

Input
9 9 9 9
1 2 3 4
5 6 7 8
2
1 2
Output
1 9 9 4
5 9 9 8
6 2 7 3

Bình luận

Mới nhất
Tải bình luận...

Không có bình luận nào.