Backstory
Không thực sự, sshh!
Mọi chuyện bắt đầu vào một ngày khi một đồng nghiệp mang một ổ bánh mì tự làm cho ngày sinh nhật của sếp tôi.
Ông chủ của tôi thực sự thích ổ bánh mì này, và ông muốn một cái khác. Thật không may, đồng nghiệp của tôi đã nghỉ việc, vì vậy ông chủ của tôi cần tôi đưa cho anh ta một ổ bánh khác.
Vấn đề là, tôi không có ý tưởng làm bánh mì. Vì vậy, tôi đã nói với sếp của mình rằng tôi không phải là một đầu bếp và để tìm kiếm một người khó hơn.
Anh ta nói, "Chắc chắn ... nhưng bạn mất việc nếu bạn không thể biến tôi thành một ổ bánh."
Sau đó, tôi đã có một ý tưởng.
Tôi sẽ làm cho anh ta một ổ bánh nghệ thuật với skilz mã hóa của tôi! Ông nói có, dưới 1 điều kiện: "Bạn phải làm cho nó dưới 351 byte." Thật không may cho tôi, việc chơi golf mã tốt nhất của tôi đã đưa tôi tới 375 byte. À ồ.
Sau đó, ông chủ của tôi đã thêm 2 điều: "Bạn phải cho tôi ổ bánh đó trong một tuần (4/13), và nếu bạn làm như vậy bạn sẽ được tăng lương. Lượng byte bạn sử dụng càng thấp, mức lương càng tốt. Nhưng hãy nhớ, nếu bạn vượt quá 349 bạn sẽ mất việc. "
Vì vậy, tôi cần sự giúp đỡ của bạn trong ngôn ngữ của bạn để giúp tôi giữ công việc của mình!
Quy tắc
Tôi chuẩn bị thực hiện một curl ... | sh
TinyURL, nhưng ông chủ của tôi nói với tôi rằng tôi không thể sử dụng một danh sách các sơ hở . Tôi có thể có thể tuân theo các quy tắc, nhưng công việc của tôi đang bị đe dọa, vì vậy đó không phải là một ý tưởng tốt.
Những gì được coi là một ổ bánh
Chương trình hoặc chức năng của bạn phải lấy 3 số nguyên dương làm đầu vào. Nếu ngôn ngữ của bạn có một danh sách hoặc mảng, bạn có thể lấy một danh sách hoặc mảng của những số đó. Bạn cũng có thể lấy chúng làm đối số cho một hàm hoặc chương trình hoặc một chuỗi số được phân tách bằng dấu cách thành STDIN, một đối số dòng lệnh hoặc hàm, v.v.
Số đầu tiên là chiều rộng của ổ bánh của bạn
Số thứ hai là chiều cao của ổ bánh của bạn.
Số thứ ba là độ sâu của ổ bánh của bạn.
Đây là một ổ bánh có chiều rộng 3
, chiều cao 2
và chiều sâu 1
:
/ --- \ / --- \ | | | | | ___ | /
Trông wierd? Đây là 3x2x2:
/ --- \ / | / --- \ | | | / | ___ | /
Làm thế nào về một 3x3x3:
/ --- \ / | / | / --- \ | | | / | | / | ___ | /
Một 4x1x2:
/ ---- \ / | / ---- \ / | ____ | /
Tôi hy vọng bạn hiểu! Xem câu trả lời JS (ES6) của tôi dưới đây để biết ví dụ.
Cũng xem trường hợp kiểm tra đầy đủ
Ghi chú:
- Đừng lo lắng về đầu vào hợp lệ. Tất cả các kích thước sẽ là số nguyên dương.
- Bạn phải chấp nhận bất kỳ số nguyên dương nào mà ngôn ngữ của bạn có thể hỗ trợ.
- Nếu số lượng quá cao, ngôn ngữ của bạn gặp sự cố từ StackOverflow, tràn chiều dài chuỗi tối đa, v.v ... không sao cả.