Chương trình khuyến mại mùa đông Scream ™ đã bắt đầu và bạn vừa giành cho mình một trò chơi hành động tối giản mãnh liệt, Super Square . Khi chơi nó, bạn nhận ra rằng trò chơi chỉ cực kỳ khó khăn hoặc bạn thực sự xấu về nó. Đặc biệt, có kiểu "mưa" này dường như khiến bạn gặp phải mỗi lần ...
Thất vọng, bạn quyết định cho mình một thử thách khác: Vẽ mô hình mưa trong nghệ thuật ASCII!
Đầu vào
Đầu vào là một số nguyên dương duy nhất cho biết kích thước của mẫu n
, được đưa ra thông qua STDIN hoặc đối số hàm.
Đầu ra
Đầu ra là mẫu mưa ở kích thước đã chỉ định, được trả về dưới dạng chuỗi hoặc được in qua STDOUT. Khoảng trắng hàng đầu hoặc dấu trước hoặc sau toàn bộ hình ảnh đều ổn. Ngoài ra, hình ảnh không cần phải được đặt ở bên trái màn hình, nhưng phải rõ ràng.
Đây là n = 10
:
...................
| ----------------- |
| ............... |
| | ------------- | |
| | ........... | |
| | | --------- | | |
| | | ....... | | |
| | | | ----- | | | |
| | | | ... | | | |
| | | | | - | | | | |
| | | | | | | | | |
| | | | | - | | | | |
| | | | ... | | | |
| | | | ----- | | | |
| | | ....... | | |
| | | --------- | | |
| | ........... | |
| | ------------- | |
| ............... |
| ----------------- |
...................
Đây là n = 5
:
---------
.......
| ----- |
| ... |
| | - | |
| | | |
| | - | |
| ... |
| ----- |
.......
---------
Và cuối cùng, đây n = 1
(chỉ là hai bức tường trong cùng):
-
-
Xây dựng (cho rõ ràng hơn)
Khu vực chơi được chia thành hai cặp góc phần tư như vậy:
AAAAAAAAA
B AAAAAAA B
BB AAAAA BB
BBB AAA BBB
BBBB A BBBB
BBBBB BBBBB
BBBB A BBBB
BBB AAA BBB
BB AAAAA BB
B AAAAAAA B
AAAAAAAAA
Các góc phần tư trên / dưới nên xen kẽ giữa các bức tường ngang được biểu thị bằng dấu gạch nối -
và các khoảng trống được tô bóng bằng các dấu chấm .
. Các góc phần tư trái / phải nên xen kẽ giữa các không gian và các bức tường thẳng đứng được biểu thị bằng các đường ống
|
. Các đường chéo chính trống và phải luôn được lấp đầy khoảng trống.
Mô hình mưa n
có kích thước có 2n
các bức tường, với các bức tường từ các góc phần tư trên / dưới gần trung tâm nhất và các bức tường xen kẽ giữa các góc phần tư khi chúng ta di chuyển ra khỏi trung tâm.
Chấm điểm
Đây là mã golf, vì vậy mã trong ít byte nhất sẽ thắng.