Cho một chuỗi vuông, tạo ra tất cả đầu ra cho chuỗi ở mọi giai đoạn mở ra.
Chuỗi phải mở ra theo chiều kim đồng hồ một phần tư lần lượt tại một thời điểm.
Ví dụ
Đầu vào :
A
Đầu ra :
A
Lưu ý : Tôi cũng sẽ chấp nhận đầu vào trùng lặp cho trường hợp thử nghiệm cụ thể này chỉ khi điều này giúp giảm số byte của bạn.
Đầu vào :
DC
AB
Đầu ra :
DC
AB
D
ABC
ABCD
Đầu vào :
GFE
HID
ABC
Đầu ra :
GFE
HID
ABC
HG
IF
ABCDE
IH
ABCDEFG
I
ABCDEFGH
ABCDEFGHI
Đầu vào :
JIHG
KPOF
LMNE
ABCD
Đầu ra :
JIHG
KPOF
LMNE
ABCD
LKJ
MPI
NOH
ABCDEFG
NML
OPK
ABCDEFGHIJ
ON
PM
ABCDEFGHIJKL
PO
ABCDEFGHIJKLMN
P
ABCDEFGHIJKLMNO
ABCDEFGHIJKLMNOP
Quy tắc
Đây là mã golf, vì vậy mã ngắn nhất tính bằng byte sẽ thắng.
- Bất kỳ định dạng hợp lý nào cũng có thể được sử dụng cho I / O giả sử nó phù hợp.
- Không gian phải được sử dụng để đệm các dòng trên cùng của đầu ra.
- Phải có khả năng xử lý đầu vào của tất cả các ký tự có thể in (bao gồm khoảng trắng:
\x20
-\x7e
):
! "# $% & '() * +, -. / 0123456789:;?
- Khoảng trắng hàng đầu / dấu được cho phép.
- Bạn có thể giả sử chuỗi sẽ luôn là một hình vuông.
- Tất cả các sơ hở tiêu chuẩn đều bị cấm.
Cảm hứng: Viết một chương trình hình vuông cho ra số lần mà nó đã không được kiểm soát .
["A","A"]
cho"A"
, như chương trình của tôi không (thay vì["A"]
)? Nó có vẻ hợp lý với tôi vì chúng chỉ là vị trí bắt đầu và kết thúc, và bạn chỉ cố gắng mở nó một lần.