Đầu vào:
Một chuỗi
Đầu ra:
1) Trước tiên chúng ta hãy nhân vật remove ở phần cuối của đầu vào dây cho đến khi chúng tôi là trái với chiều dài đó là một hình vuông (tức là 1, 4, 9, 16, 25, 36, vv)
Vì vậy,abcdefghijklmnopqrstuvwxyz
(chiều dài 26) trở thành abcdefghijklmnopqrstuvwxy
( dài 25).
2) Sau đó, chúng tôi đặt cái này vào một hình vuông, mỗi dòng một dòng, từ trái sang phải:
abcde
fghij
klmno
pqrst
uvwxy
3) Chúng tôi gấp nó theo cả bốn hướng, như thế này (chúng tôi tiếp tục mở cho đến khi 'khối' được gấp bên ngoài không còn các ký tự bên trong để mở ra nữa):
m
qrs
l n
ghi
abcde
ihgf jihg
mn lk on lm
srqp tsrq
uvwxy
qrs
l n
ghi
m
Một số điều cần lưu ý, khi chúng ta gập ra bên ngoài, về cơ bản chúng ta phản ánh như thế này (các số được thêm vào như là sự làm rõ, đại diện cho 'chỉ mục' trong các ví dụ này):
Khi chúng ta gấp bên trái:
123 to: 321 123
fghij ihgf j
Khi chúng ta gấp bên phải:
123 to: 123 321
fghij f jihg
Khi chúng ta gấp lên:
3q
2l
1g
b to: b
1g 1
2l 2
3q 3
v v
Khi chúng ta gập xuống:
b b
1g 1
2l 2
3q 3
v to: v
3q
2l
1g
Quy tắc thử thách:
- Bạn có thể giả sử đầu vào sẽ luôn có ít nhất 1 ký tự (cũng sẽ là đầu ra).
- Định dạng đầu ra là linh hoạt, vì vậy bạn có thể in sang STDOUT hoặc STDERR; trả về dưới dạng chuỗi-mảng / danh sách hoặc mảng 2D ký tự; chuỗi đơn với dòng mới; Vân vân.
- Đầu vào sẽ chỉ chứa các ký tự chữ và số (
a-zA-Z0-9
) - Bạn cũng có thể sử dụng ký tự không phải là chữ và số để lấp đầy khoảng trắng trong và / hoặc xung quanh đầu ra nghệ thuật ASCII, như dấu chấm
.
. - Không gian lưu trữ và một dòng mới duy nhất là tùy chọn.
- Chúng tôi tiếp tục mở ra cho đến khi 'khối' gấp bên ngoài không còn trung tâm nào để mở ra.
Quy tắc chung:
- Đây là môn đánh gôn , vì vậy câu trả lời ngắn nhất bằng byte thắng.
Đừng để ngôn ngữ mã-golf ngăn cản bạn đăng câu trả lời với các ngôn ngữ không mã hóa. Cố gắng đưa ra một câu trả lời càng ngắn càng tốt cho ngôn ngữ lập trình 'bất kỳ'. - Các quy tắc chuẩn áp dụng cho câu trả lời của bạn, vì vậy bạn được phép sử dụng STDIN / STDOUT, các hàm / phương thức với các tham số thích hợp và kiểu trả về, các chương trình đầy đủ. Cuộc gọi của bạn.
- Lỗ hổng mặc định bị cấm.
- Nếu có thể, vui lòng thêm một liên kết với một bài kiểm tra cho mã của bạn.
- Ngoài ra, xin vui lòng thêm một lời giải thích nếu cần thiết.
Các trường hợp thử nghiệm:
Input: abcdefghijklmnopqrstuvwxy
Output:
m
qrs
l n
ghi
abcde
ihgf jihg
mn lk on lm
srqp tsrq
uvwxy
qrs
l n
ghi
m
Input: A
Ouput:
A
Input: ThisIsATest
Output:
I
Thi
Is sI
ATe
I
Input: HowAboutAVeryLongExampleWhichIsAlsoAnEvenSquareInsteadOfOddOneAndExceeds64Chars
Output:
An
ch
xamp
i I
o E
quar
steadO
S e
s v
h s
E l
VeryLo
HowAbout
oLyreVA noLyreV
xampl Eg el Examp
hci Is hW As hi Ihc
nAo Ev sl ev so EnA
quare Sn Ie Squar
Odaetsn fOdaets
OddOneAn
steadO
S e
s v
h s
E l
VeryLo
xamp
i I
o E
quar
An
ch
Input: Lenght7
Output:
Le
ng
Input: abc
Output:
a