Có kết quả kết hợp kinh điển rằng số cách xếp một 2*n
dải bằng 1*2
domino là số Fibonacci thứ n . Mục tiêu của bạn là in tất cả các chữ nghiêng cho trước n
, được vẽ bằng dấu gạch ngang và các đường thẳng đứng như 8 chữ nghiêng này cho n=5
:
|————
|————
——|——
——|——
|||——
|||——
————|
————|
||——|
||——|
|——||
|——||
——|||
——|||
|||||
|||||
Bạn phải cung cấp một chương trình hoặc chức năng được đặt tên n
làm đầu vào và in đầu ra cần thiết. Ít byte nhất sẽ thắng.
Đầu vào
Một số n
giữa 1
và 10
bao gồm thông qua STDIN hoặc đầu vào chức năng.
Đầu ra
In mọi nghiêng domino có thể của 2*n
dải, vẽ theo chiều ngang. Các góc có thể theo thứ tự bất kỳ, nhưng mỗi lần xuất hiện chính xác một lần. Chúng phải được phân cách bằng một dòng trống.
Một domino dọc được làm bằng hai thanh dọc ( |
) và một domino ngang được làm bằng hai dấu gạch ngang ( —
). Bạn có thể sử dụng dấu gạch nối ( -
) thay cho dấu gạch ngang để ở lại ASCII.
Bạn có thể làm bất cứ điều gì với khoảng trắng miễn là đầu ra được in trông giống nhau.
——
và |
theo chiều dài như Dennis, không length- n
chuỗi —
và |
lọc bởi —
xuất hiện trong cặp. Và về sau, tôi hy vọng nó sẽ thông qua các biểu thức chính quy hoặc chuỗi trên chuỗi được sản xuất, như s.split('——
) `, chứ không phải bằng cách tiếp cận số học như của bạn.