На моєму веб-сайті користувачі вводять свою дату народження у стилі xx.xx.xx- три двоцифрових числа, розділених крапками. На жаль, я забув сказати користувачам, який саме формат використовувати. Я знаю лише те, що один розділ використовується на місяць, один на дату та один на рік. Рік, безумовно, XX століття (1900-1999), тому формат 31.05.75означає 31 May 1975. Крім того, я припускаю, що всі використовують або григоріанський, або юліанський календар.
Тепер я хочу пройти свою базу даних, щоб очистити безлад. Я б хотів розпочати, розглядаючи користувачів із самими неоднозначними датами, тобто тими, де діапазон можливих дат найбільший.
Наприклад, дата 08.27.53означає 27 August 1953або григоріанський, або юліанський календар. Дата в юліанському календарі на 13 днів пізніше, тож діапазон просто 13 days.
Навпаки, позначення 01.05.12можуть стосуватися багатьох можливих дат. Найдавніший є 12 May 1901 (Gregorian), а останній - 1 May 1912 (Julian). Асортимент є 4020 days.
Правила
- Введення - це рядок у форматі
xx.xx.xx, де кожне поле - це дві цифри та нульове значення. - Вихід - кількість днів у діапазоні.
- Можна припустити, що вхід завжди буде дійсною датою.
- Ви не можете використовувати будь-які вбудовані функції дати чи календаря.
- Найкоротший код (у байтах) виграє.
Тестові шафи
01.00.31=>1229.00.02=>0(Єдина можливість29 February 1900 (Julian))04.30.00=>1306.12.15=>3291
5, May 1975має бути31st? Крім того, чи повинні ми враховувати високосні роки?