Đưa ra một danh sách các hoạt động và thời gian / ngày bắt đầu của chúng, xuất ra lịch nghệ thuật ASCII hiển thị các hoạt động vào những ngày thích hợp. Tất cả các hoạt động được đảm bảo trong cùng một tháng, không có hai hoạt động sẽ diễn ra trong cùng một ngày và tất cả các hoạt động được đảm bảo phù hợp với hộp lịch.
Lịch có ngày ở góc trên bên trái của mỗi hộp, các hộp có 9 không gian rộng bằng 5 không gian, bao quanh -
và |
. Chữ viết tắt hai chữ cái cho ngày trong tuần được tập trung ở trên hàng đầu tiên và các tuần bắt đầu bằng Chủ nhật.
Ví dụ, đưa ra các hoạt động sau:
10/5/2018 - 9:00am - Sandbox calendar challenge
10/9/2018 - 9:00am - Post challenge to main
10/10/2018 - 10:00am - Profit
10/31/2018 - 7:30pm - Halloween party
Xuất lịch tương ứng này:
Su Mo Tu We Th Fr Sa
-----------------------------------------------------------------------
| |1 |2 |3 |4 |5 |6 |
| | | | | |9:00am | |
| | | | | |Sandbox | |
| | | | | |calendar | |
| | | | | |challenge| |
-----------------------------------------------------------------------
|7 |8 |9 |10 |11 |12 |13 |
| | |9:00am |10:00am | | | |
| | |Post |Profit | | | |
| | |challenge| | | | |
| | |to main | | | | |
-----------------------------------------------------------------------
|14 |15 |16 |17 |18 |19 |20 |
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | |
-----------------------------------------------------------------------
|21 |22 |23 |24 |25 |26 |27 |
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | |
-----------------------------------------------------------------------
|28 |29 |30 |31 | | | |
| | | |7:30pm | | | |
| | | |Halloween| | | |
| | | |party | | | |
| | | | | | | |
-----------------------------------------------------------------------
Làm rõ
- Các từ lịch biểu (khớp [A-Za-z] +) sẽ được phân cách bằng một khoảng trắng giữa chúng (như trong ví dụ).
- Tách văn bản trên ranh giới từ là đủ. Không cần từ gạch nối.
- Nếu tháng hai bắt đầu vào Chủ nhật trong một năm không nhuận, bạn sẽ chỉ có bốn hàng lịch.
- Nếu một tháng 31 ngày (ví dụ: tháng 8) bắt đầu vào cuối tuần, bạn có thể phải xuất sáu hàng lịch.
I / O và Nội quy
- Mã của bạn phải xử lý ngày ít nhất là giữa
0001-01-01
và9999-12-31
trong lịch Gregorian, bao gồm cả năm nhuận nếu thích hợp. Ví dụ: nếu được cung cấp đầu vào2016-02-13 9:00am Test
, lịch đầu ra sẽ có ngày 29 tháng 2. - Định dạng ngày đầu vào có thể ở bất kỳ định dạng mong muốn. ISO 8601, một
datetime
đối tượng, một chuỗi có định dạng đặc biệt, v.v. Phân tích cú pháp đầu vào không phải là phần thú vị của thử thách này. - Đầu vào và đầu ra có thể bằng bất kỳ phương pháp thuận tiện .
- Các dòng mới hàng đầu / dấu hoặc khoảng trắng khác là tùy chọn, miễn là các ký tự xếp hàng một cách thích hợp.
- Hoặc là một chương trình đầy đủ hoặc một chức năng được chấp nhận. Nếu một chức năng, bạn có thể trả lại đầu ra thay vì in nó.
- Đầu ra có thể là bàn điều khiển, được trả về dưới dạng danh sách các chuỗi, được trả về dưới dạng một chuỗi, v.v.
- Sơ hở tiêu chuẩn bị cấm.
- Đây là môn đánh gôn, vì vậy tất cả các quy tắc chơi gôn thông thường đều được áp dụng và mã ngắn nhất (tính bằng byte) sẽ thắng.
1752-09-02 - 09:00am - Wife's Birthday Tomorrow (14th!)