รับรายการกิจกรรมและเวลา / วันที่เริ่มต้นส่งออกปฏิทิน ASCII-art ที่แสดงกิจกรรมในวันที่เหมาะสม กิจกรรมทั้งหมดได้รับการรับประกันว่าจะอยู่ในเดือนเดียวกันไม่มีกิจกรรมสองกิจกรรมในวันเดียวกันและกิจกรรมทั้งหมดจะได้รับการบรรจุภายในกล่องปฏิทิน
ปฏิทินมีวันที่ที่มุมบนซ้ายของแต่ละกล่องกล่องมีช่องว่าง 9 ช่องกว้าง 5 ช่องสูงล้อมรอบด้วย-
และ|
และตัวย่อสองตัวอักษรสำหรับวันในสัปดาห์นั้นอยู่เหนือแถวแรกและสัปดาห์เริ่มต้นด้วยวันอาทิตย์
ตัวอย่างเช่นกำหนดกิจกรรมต่อไปนี้:
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
เอาท์พุทปฏิทินที่สอดคล้องกันนี้:
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 | | | |
| | | | | | | |
-----------------------------------------------------------------------
ชี้แจง
- คำกำหนดเวลา (การจับคู่ [A-Za-z] +) จะคั่นด้วยช่องว่างเดียวระหว่างพวกเขา (ดังในตัวอย่าง)
- การแบ่งข้อความตามขอบเขตของคำนั้นเพียงพอแล้ว ไม่จำเป็นต้องใช้คำที่มีการใส่ยัติภังค์
- หากเดือนกุมภาพันธ์เริ่มต้นในวันอาทิตย์ในแบบที่ไม่ก้าวกระโดดคุณจะมีแถวปฏิทินได้สี่แถวเท่านั้น
- หากเดือน 31 วัน (เช่นสิงหาคม) เริ่มช้าในสัปดาห์คุณอาจต้องแสดงแถวปฏิทินหกแถว
I / O และกฎ
- รหัสของคุณจะต้องจัดการกับวันที่อย่างน้อยระหว่าง
0001-01-01
และ9999-12-31
ในปฏิทินเกรโกเรียนรวมถึงปีอธิกสุรทินตามความเหมาะสม ตัวอย่างเช่นหากได้รับการป้อนข้อมูล2016-02-13 9:00am Test
ปฏิทินผลลัพธ์ควรมีวันที่ 29 กุมภาพันธ์ - รูปแบบวันที่อินพุตสามารถอยู่ในรูปแบบที่ต้องการ ISO 8601,
datetime
วัตถุ, สตริงที่มีการจัดรูปแบบโดยเฉพาะ ฯลฯ การแยกวิเคราะห์อินพุตไม่ใช่ส่วนที่น่าสนใจของความท้าทายนี้ - อินพุตและเอาต์พุตสามารถทำได้โดยวิธีใดก็ได้ที่สะดวกด้วยวิธีการที่สะดวกใด
- ขึ้นบรรทัดใหม่ / ต่อท้ายหรือช่องว่างอื่น ๆ เป็นตัวเลือกโดยมีเงื่อนไขว่าตัวละครจะเข้าแถวอย่างเหมาะสม
- ยอมรับได้ทั้งโปรแกรมหรือฟังก์ชั่น หากฟังก์ชั่นคุณสามารถส่งคืนผลลัพธ์มากกว่าการพิมพ์
- เอาต์พุตสามารถไปที่คอนโซลส่งคืนเป็นรายการของสตริงส่งคืนเป็นสตริงเดี่ยว ฯลฯ
- ช่องโหว่มาตรฐานเป็นสิ่งต้องห้าม
- นี่คือรหัส - กอล์ฟเพื่อให้ใช้กฎการตีกอล์ฟตามปกติและรหัสที่สั้นที่สุด (เป็นไบต์) ชนะ
1752-09-02 - 09:00am - Wife's Birthday Tomorrow (14th!)