Bởi vì đó là thứ bảy (UTC) và tôi đói, tôi muốn một lát pizza. Tôi sẽ cho bạn một đơn đặt hàng và tôi muốn một chiếc bánh pizza nghệ thuật ascii nóng hổi . Lên đến thử thách?
Lái xe-Thru
Tôi sẽ đặt hàng ở bất cứ nơi nào ổ đĩa của bạn, cho dù đó là STDIN, tham số chức năng, đối số dòng lệnh, nhưng tôi sẽ không đặt nó vào một biến cho bạn. (Các biểu thức hàm JS phải được gán cho một biến.)
Mệnh lệnh
Đơn hàng của tôi sẽ có 2 phần. Đầu tiên sẽ là một số nguyên dương, khác không từ 3
đến 6
. Đây là kích thước của pizza của tôi. Chẳng hạn, một 6
chiếc pizza cỡ không có lớp phủ bên trên sẽ trông như sau:
/=====\
/ \
| |
| |
\ /
\=====/
Một kích thước 5
:
/====\
/ \
| |
\ /
\====/
Một kích thước 4
:
/===\
| |
| |
\===/
Một kích thước 3
/==\
| |
\==/
Mặt trên
Topppings của tôi sẽ là một chuỗi các chữ cái UPPERCASE. Dưới đây là các giá trị có thể:
P - Pepperoni S - xúc xích N - piNnut J - Jalapenos B - Ớt chuối C - baCon
Bạn phải đặt chúng trên bánh pizza ở đâu đó. Nếu tôi đặt một kích thước 4 và PSPCJ
, thì đây là một đầu ra hợp lệ:
/===\
|PSPCJ|
| |
\===/
Đây là:
/===\
|P P J|
| S C |
\===/
Và điều này:
/===\
| |
|PSPCJ|
\===/
Tôi không thực sự kén chọn về vị trí của lớp phủ trên bánh pizza, miễn là chúng không nằm trên lớp vỏ hoặc trên nhau.
Cửa sổ đón khách
Tôi sẽ đi đến rất nhiều nơi để nhận pizza của mình, bao gồm STDOUT, một tệp, giá trị trả về của một hàm, nhưng không phải là một biến.
Thêm thứ
- Sơ hở tiêu chuẩn bị cấm
- Đây được gắn thẻ code-golf để câu trả lời ngắn nhất tính bằng byte sẽ thắng!
- Đừng lo lắng về đầu vào không hợp lệ (toppings> không gian pizza, v.v.)
- Xem câu trả lời của tôi (JS ES6) bên dưới để biết ví dụ (Tôi hy vọng bạn có thể làm tốt hơn)
̶5̶,̶ ̶N̶N̶N̶
̶ cũng là một giá trị đầu vào ̶ (hoặc nên nó được ̶ ̶5̶,̶ ̶N̶
̶ thay) ̶ ̶ Ngoài ra, nơi là nấm ..? :( EDIT: Đừng bận tâm về câu hỏi đầu tiên, tôi thấy các trường hợp kiểm tra của bạn có P