Nếu bạn ném một quả trứng ASCII theo một hướng nhất định, bạn sẽ kết thúc với một biểu tượng ASCII có kích thước n . Nó "bắt đầu" với một o
(lòng đỏ) và tiếp tục theo một hướng nhất định với "đường" bao gồm 2 đến n *
's. Các *
'được phân tách bằng một "không gian" và o
và tất cả các "dòng" của *
' được phân tách bằng "các dòng" của "không gian".
Hướng của splat có thể là một trong tám hướng từ o
, ví dụ:
1 2 3
4 o 5
6 7 8
Dưới đây là ví dụ về các sọc ASCII kích thước 4 hướng 5
, 2
và 3
tương ứng. Ở bên trái là ASCII splat thực tế, và bên phải là các ký hiệu tương tự, nhưng với "dòng" của "không gian" thay bằng "đường dây" thực tế (tức là -
hay \
hoặc |
tùy thuộc vào hướng) chỉ cần làm rõ thế nào là một "Dòng" không gian.
Size 4, direction 5
* | | |*
* | |*|
* * |*| |*
o * o| |*|
* * |*| |*
* | |*|
* | | |*
Size 4, direction 2
* * * * * * * *
-------
* * * * * *
-------
* * * *
-------
o o
Size 4, direction 3
* *
\
* * *\*
\ \
* * * *\*\*
\ \ \
o * * * o\*\*\*
Thử thách
Cho n ≥ 1 và một trong 8 hướng có thể, hãy viết một hàm hoặc chương trình xuất ra biểu tượng ASCII có kích thước n theo hướng đã cho.
Đầu vào và đầu ra
Bất kỳ định dạng đầu vào phù hợp, hợp lý đều được cho phép. Bạn không cần ánh xạ chỉ đường tới các số nguyên 1 đến 8 giống như cách tôi đã làm - nếu một số cách khác để xác định hướng dễ dàng hơn, hãy tiếp tục. Nhưng hãy nói những gì bạn đã làm nếu nó không rõ ràng.
Kết quả sẽ bao gồm o
, *
, không gian (U + 0020) và dòng mới (U + 000A) mà tạo ra splat ASCII. Dẫn đầu, theo dõi, nếu không khoảng trắng thêm được phép trên bất kỳ dòng nào.
Quy tắc
Đây là môn đánh gôn . Quy tắc chuẩn áp dụng.
Thêm ví dụ
Size 1, any direction
o
Size 3, direction 6
* * o
* *
*
Size 5, direction 7
o
* *
* * *
* * * *
* * * * *