Thử thách
Viết chương trình lấy một mảng số nguyên 11x11 và xây dựng khối xây dựng khối 3D ASCII, trong đó mỗi giá trị trong mảng biểu thị chiều cao của một cột khối tại tọa độ khớp với vị trí mảng. Chiều cao âm là cột "nổi" - chỉ có thể nhìn thấy khối trên cùng.
Thí dụ
__________________
___ /\__\__\__\__\__\__\
3, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, /\__\ /\/\__\__\__\__\__\__\
2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, /\/__/ /\/\/__/__/__/__/__/__/
2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, /\/\__\ /\/\/\__\ /\/\/__/
1, 0, 0, 7,-7,-7,-7,-7, 7, 0, 0, \/\/\__\ /\/\/\/__/ /\/\/__/
0, 0, 0, 7,-7,-7,-7,-7, 7, 0, 0, \/\/__/ /\/\/\/\__\ /\/\/__/
0, 0, 0, 6, 0, 0, 0, 0, 0, 0, 0, \/\__\ /\/\/\/\/__/ /\/\/__/
0, 0, 0, 5, 0, 0, 0, 0, 0, 0, 0, \/__/ \/\/\/\/\__\_ \/\/__/
1, 0, 0, 4, 3, 2, 1, 0, 0, 0, 1, \/\/\/\/__/_\_ \/__/
1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, ___ \/\/\/__/__/_\_ ___
1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, /\__\ \/\/__/__/__/_\ /\__\
1, 1, 1, 1, 0, 0, 0, 1, 1, 1, 1, \/\__\ \/__/__/__/__/ \/\__\
\/\__\_________ ______\/\__\
\/\__\__\__\__\ /\__\__\__\__\
\/__/__/__/__/ \/__/__/__/__/
Đầu vào
Đầu vào sẽ là một danh sách gồm 121 số nguyên, được đọc từ stdin (lựa chọn dấu phân tách tùy thuộc vào bạn) hoặc được truyền vào dưới dạng một mảng (có thể là 1D hoặc 2D).
Độ cao sẽ nằm trong phạm vi -11 đến 11.
Đầu ra
Tòa nhà được tạo có thể được ghi vào thiết bị xuất chuẩn, hiển thị trực tiếp trên màn hình hoặc được trả về dưới dạng chuỗi phân tách dòng mới.
Khoảng trắng hàng đầu và dấu được cho phép.
Quy tắc xây dựng
Hình dạng của một khối 3D riêng lẻ trông như thế này:
___
/\__\
\/__/
Và một khối lập phương 2x2x2 trông như thế này:
______
/\__\__\
/\/\__\__\
\/\/__/__/
\/__/__/
Khi các khối chồng lên nhau, một khối cao hơn được ưu tiên hơn một khối thấp hơn, các khối ở phía trước được ưu tiên hơn các khối phía sau và các khối ở bên trái được ưu tiên hơn các khối bên phải. Trường hợp đặc biệt duy nhất là dòng trên cùng của một khối không bao giờ ghi đè lên bất kỳ ký tự không phải không gian nào phía sau nó.
Việc giải thích chiều cao cột có thể được giải thích tốt nhất bằng cách nhìn vào biểu diễn 2D từ bên cạnh.
HEIGHT: 1 2 3 -3 -2 -1
__ __
__ |__| |__| __
__ |__| |__| |__| __
|__| |__| |__| |__|
Các trường hợp thử nghiệm
Nếu bạn muốn thử giải pháp của mình trên một vài đầu vào nữa, tôi đã kết hợp một vài trường hợp thử nghiệm ở đây .
Chiến thắng
Đây là môn đánh gôn , vì vậy bài nộp ngắn nhất (tính bằng byte) sẽ thắng.