Etkinliklerin bir listesi ve başlangıç saati / tarihi göz önüne alındığında, etkinlikleri uygun günlerde gösteren bir ASCII sanat takvimi çıktılayın. Tüm etkinliklerin aynı ayda olması garanti edilir, aynı gün iki etkinlik olmaz ve tüm etkinliklerin takvim kutusuna sığacağı garanti edilir.
Takvim her kutunun sol üst köşesindeki tarih var, kutular ile çevrili boyunda 5 boşluklarla geniş 9 boşluklar vardır -
ve |
. Haftanın günü için iki harfli kısaltma ilk satırın üzerinde ortalanır ve haftalar Pazar ile başlar.
Örneğin, aşağıdaki etkinlikler göz önüne alındığında:
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
İlgili takvimin çıktısını alın:
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çıklamalar
- Zamanlama sözcükleri ([A-Za-z] + ile eşleşen) aralarında tek bir boşlukla sınırlandırılacaktır (örnekte olduğu gibi).
- Metni sözcük sınırları üzerinde bölmek yeterlidir. Kelimeleri tirelemeye gerek yok.
- Şubat bir pazar günü artık olmayan bir yılda başlarsa, yalnızca dört takvim satırınız olur.
- 31 günlük bir ay (örneğin, Ağustos) haftanın sonlarına doğru başlarsa altı takvim satırı çıkarmanız gerekebilir.
G / Ç ve Kurallar
- Kodunuz , uygun şekilde artık yıllar dahil olmak üzere, en az Gregoryen takvimi arasındaki
0001-01-01
ve9999-12-31
içindeki tarihleri işlemelidir. Örneğin, girdi verilirse2016-02-13 9:00am Test
, çıktı takviminde 29 Şubat olmalıdır. - Giriş tarihi formatı istenilen herhangi bir formatta olabilir. ISO 8601, bir
datetime
nesne, özellikle biçimlendirilmiş bir dize, vb. Giriş ayrıştırma bu zorluğun ilginç bir parçası değildir. - Giriş ve çıkış herhangi bir uygun yöntemle yapılabilir .
- Karakterlerin uygun şekilde hizalanması şartıyla, öndeki / sondaki yeni satırlar veya diğer boşluklar isteğe bağlıdır.
- Tam bir program veya bir işlev kabul edilebilir. Bir işlev varsa, çıktıyı yazdırmak yerine döndürebilirsiniz.
- Çıktı konsola olabilir, bir dize listesi olarak döndürülebilir, tek bir dize olarak döndürülebilir, vb.
- Standart boşluklar yasaktır.
- Bu kod golfüdür, bu nedenle her zamanki golf kuralları geçerlidir ve en kısa kod (bayt cinsinden) kazanır.
1752-09-02 - 09:00am - Wife's Birthday Tomorrow (14th!)