Duyên hải Bắc Bộ 2017 - Trò chơi xếp hình

Xem dạng PDF

Gửi bài giải

Điểm: 10,00 (OI)
Giới hạn thời gian: 1.0s
Giới hạn bộ nhớ: 1G
Input: stdin
Output: stdout

Dạng bài
Ngôn ngữ cho phép
C, C++, Java, Output Only, Pascal, PyPy, Python, Scratch, TEXT

Trong trường hợp đề bài hiển thị không chính xác, bạn có thể tải đề bài tại đây: Đề bài

Một sản phẩm thú vị khác mà Tuấn Anh tạo ra và cùng chơi với các bạn đó là trò chơi xếp hình. Trò chơi với rất nhiều các hình khối lập phương kích thước ~2 \times 2 \times 2~ nhưng bị khuyết một ô như hình vẽ bên phải. Mỗi lượt chơi, các bạn cùng thống nhất chọn ra 4 số nguyên ~d, x, y, z~, trong đó ~1 \le x, y, z \le 2^d~. Sau đó, Tuấn Anh và các bạn cùng xếp xem ai xếp được hình lập phương kích thước ~2^d \times 2^d \times 2^d~ nhưng khuyết một ô ở vị trí ~(x, y, z)~. Cụ thể, sau khi xếp xong, hình được đặt trên mặt bàn, các lớp tương ứng theo từng chiều được đánh số từ 1 đến ~2^d~, ô nằm giao giữa ba lớp tương ứng ~x, y, z~ (~1 \le x, y, z \le 2^d~) được gọi là ô có vị trí ~(x, y, z)~.

Yêu cầu: Cho ~d, x, y, z~, hãy lập trình đưa ra phương án xếp thỏa mãn.

Input

  • Dòng đầu chứa 4 số nguyên dương ~d, x, y, z~. Hai số liên tiếp trên cùng dòng được ghi cách nhau bởi dấu cách.

Output

  • Mô tả cách xếp. Gọi ~s~ là số lượng hình (khối lập phương kích thước ~2 \times 2 \times 2~ nhưng bị khuyết một ô) được sử dụng, các hình này được đánh số hiệu từ 1 đến ~s~. Việc mô tả cách xếp ghi theo khuôn dạng sau: Gồm ~2^d~ nhóm dòng, nhóm thứ ~i~ mô tả lớp thứ ~i~ theo chiều ~X~, mỗi nhóm gồm ~2^d~ dòng. Dòng thứ ~j~ của nhóm thứ ~i~ có ~2^d~ số, số thứ ~k~ trên dòng thứ ~j~ của nhóm thứ ~i~ mô tả số hiệu hình chứa ô có vị trí ~(i, j, k)~. Ô ~(x, y, z)~ ghi số 0.

Sample Input 1

1 2 2 2

Sample Output 1

1 1
1 1
1 1
1 0

Subtasks

  • Có 30% số test ứng với 30% số điểm có ~d = 1~;
  • Có 30% số test khác ứng với 30% số điểm có ~d = 2~;
  • Có 40% số test còn lại ứng với 40% số điểm có ~d \le 5~.

Bình luận

Hãy đọc nội quy trước khi bình luận.


Không có bình luận tại thời điểm này.