Theo tôi, một cơn lốc xoáy trông như thế này:
########
#######
######
#####
####
###
##
#
Lốc xoáy này bắt đầu với chiều rộng n
và trên mỗi dòng tiếp theo, một ký tự được xóa khỏi bên trái hoặc bên phải, tùy thuộc vào đầu vào.
Đầu vào
Đầu vào sẽ là một danh sách một số loại của hai giá trị duy nhất (một chuỗi gồm hai ký tự duy nhất cũng hoạt động) và một số nguyên dương tùy chọn để chỉ ra chiều rộng bắt đầu. Nếu số nguyên tùy chọn không được lấy, thì chiều rộng bắt đầu lớn hơn 1 so với chiều dài của danh sách. Hãy để chiều rộng bắt đầu là n
.
Cách làm cơn lốc xoáy
Trong ví dụ của tôi, tôi chọn danh sách của mình để chứa 1
s và 0
s, mặc dù bạn có thể chọn bất kỳ hai giá trị hằng khác biệt hoặc một chuỗi gồm hai ký tự hằng khác biệt.
Hàng đầu tiên sẽ bao gồm các n
ký tự không phải khoảng trắng (bạn có thể chọn bất kỳ ký tự nhất quán nào; tôi chọn #
ví dụ của mình).
Sau đó, đối với mỗi số trong danh sách, nếu số đó là 0
, loại bỏ ký tự bên trái và tạo một hàng mới; nếu đó là một 1
, loại bỏ đúng ký tự và tạo một hàng mới.
Vì vậy, cơn lốc xoáy ở trên là đầu ra cho 8, [1, 0, 0, 0, 1, 0, 0]
.
Đầu ra
Đầu ra có thể là một danh sách các chuỗi, một danh sách các danh sách các ký tự hoặc một chuỗi nhiều dòng. Trailing khoảng trắng trên mỗi dòng được cho phép, và một dòng mới ở cuối được cho phép.
Các trường hợp thử nghiệm
Những testcase bao gồm chiều rộng bắt đầu và danh sách sử dụng 1, 0
.
5, [1,0,0,1]
#####
####
###
##
#
10, [1,0,0,1,0,1,0,0,1]
##########
#########
########
#######
######
#####
####
###
##
#
7, [1,1,1,1,1,1]
#######
######
#####
####
###
##
#
100,
[1,0,0,0,0,1,0,0,0,1,1,0,1,0,0,1,0,0,1,0,0,1,1,0,1,1,1,1,0,1,0,1,1,0,0,1,0,1,1,0,0,1,1,1,0,0,1,1,1,1,1,0,0,0,1,1,0,1,0,0,1,1,1,1,1,1,1,1,1,1,0,1,1,0,0,0,0,1,0,0,0,0,1,1,1,1,0,1,0,1,0,0,1,1,0,0,0,0,1]
Quy tắc
- Áp dụng sơ hở tiêu chuẩn
- Mã ngắn nhất trong byte thắng! mã golf
- Bối cảnh không phải là một khoảng trắng (tôi quên không xác định điều này sớm hơn).
- Ngôn ngữ của bạn chỉ phải hỗ trợ các số (độ rộng) mà nó có thể xử lý, nhưng nếu trình thông dịch của bạn được viết lại với kích thước số lớn hơn, thì về mặt lý thuyết nó phải hoạt động.