Şimdi, 2015 oldu ve geçen seneki bulmacanın cevaplarının bir kısmı şimdi geçersiz çıktılar üretmeye başlıyor, artık 2015 sayısını içeren bir soru sorma zamanı.
Dışında ... neden? Geçen seneki sorunun tarihine dayanan cevaplarının geçerli kalmasını ister miydin? Neden takvimimizi asla 2015 olmayacak şekilde değiştirmiyoruz ve sonsuza dek sonsuza dek yaşamaya devam ediyoruz.
Eternal 2014 notasyonu adı verilen yeni bir tarih notasyonunu şöyle tanımlayalım:
- Tarihler 2014 ve öncesindeki tarihler proleptik Gregoryen takvimindeki ile aynı olacaktır .
- Yıllar 2015 ve sonrası içinde tarihler için, yıl 2014 kalacak ve ay 2014 yılının aynı ay döngüsü sonsuza geçmiş ay 12. So devam etmek olsaydı olurdu sayı olacaktır
2015-02-08
olacağını2014-14-08
ve2020-12-31
olacaktır2014-85-02
. Artık günlerin, artık yıl olmadığı için hesaplanmadığını unutmayın.
Göreviniz, bir Julian astronomik tarihini girdi olarak alacak bir program veya işlev oluşturmak ve Eternal 2014 notasyonundaki bu Julian tarihine karşılık gelen bir dize ya YYYY-MM-DD
da DD/MM/YYYY
biçiminde bir dize döndürmektir .
Girilen Jülyen gününün her zaman 1721426
(1 Ocak, 1) - 2914695
(23 Ocak, 3268) arasındaki bir tam sayı olacağını varsayabilirsiniz . Yıllar, 4 haneye kadar kaydırmak için baştaki sıfırları içerebilir veya içermemelidir, ancak aylar ve günler her zaman iki haneye kadar sürmek için baştaki sıfırlara sahip olmalıdır (ve yıllar, 4 dışında herhangi bir sayıdaki hanelere basmak için baştaki sıfırları içermeyebilir).
İşte kabul edilebilir tüm biçimlerde bazı örnek girdiler ve çıktıları:
> 1721426
1-01-01
01/01/1
0001-01-01
01/01/0001
> 2086302
999-12-31
31/12/999
0999-12-31
31/12/0999
> 2456659
2014-01-01
01/01/2014
> 2456789
2014-05-11
11/05/2014
> 2457024
2014-13-01
01/13/2014
> 2457389
2014-25-01
01/25/2014
> 2469134
2014-411-07
07/411/2014
> 2567890
2014-3657-29
29/3657/2014
> 2914695
2014-15059-23
23/15059/2014
Kendi dilinizde yerleşik tarih işleme kitaplıklarını kullanamazsınız. Tüm hesaplamalar programın kaynak kodunun kendisinde algoritmik olarak yapılmalıdır.
Herhangi bir dilde bunu başarmak için en kısa program (bayt cinsinden) kazanır.