Похоже, у нас этого еще нет, так что мы идем:
Соревнование
Напишите программу или функцию, которая принимает в качестве даты дату и выводит номер дня года. Вы не можете использовать любые встроенные функции для этого!
правила
- Как обычно, вы можете написать полную программу или функцию.
- Формат ввода зависит от вас, но он должен содержать год, месяц и день. Уточните, какое решение использует ваше решение!
- Постройки, связанные с датой, запрещены! Вы должны сделать работу самостоятельно. Встроенные функции, которые не связаны с операциями с датами, в порядке.
- Основой для исчисления является григорианский календарь.
- Вы должны учитывать високосные годы.
- Вам нужно обрабатывать только годы в диапазоне [1, 9999]
- Стандартные лазейки запрещены.
- Побеждает меньшее количество байтов!
Testcases
Формат ввода здесь - ГГГГ / ММ / ДД
2016/07/05 -> 187
2000/03/28 -> 88
0666/06/06 -> 157
6789/10/11 -> 284
0004/04/04 -> 95
1337/07/13 -> 194
Удачного кодирования!