Это мой первый гольф-код, поэтому, пожалуйста, дайте мне знать, если он слишком широкий или мне не хватает информации для хорошей головоломки!
Вызов
В Онтарио и, возможно, в других регионах мира счета за электроэнергию выставляются по времени использования (TOU) , которое зависит от стоимости киловатт-часа в зависимости от того, когда вы используете электроэнергию.
Учитывая дату и время, я хочу знать, нахожусь ли я в пиковый (красный), средний пиковый (желтый) или непиковый (зеленый) период времени.
вход
Предположим, что ввод осуществляется в приемлемом формате даты-времени ISO 8601 без часового пояса с минимальной точностью часов: YYYY-MM-DDThh[:mm[:ss]]
(T буквально).
Примеры
- 2014-09-01T14
- 2014-09-01T17: 30
- 2014-09-01T17: 30: 02
Выход
Вывод должен быть строкой On
, Mid
или Off
.
правила
- Самый короткий код выигрывает
- Для целей этого вызова игнорировать установленные законом праздники
- Предположим, информация найдена в этом посте. Фактические правила ценообразования по времени использования могут измениться в будущем Министерством энергетики Онтарио.
Информация
Летние будни (с 1 мая по 31 октября)
- Вне пик: с 19:00 до 07:00
- Середина пика: с 07:00 до 11:00 и с 17:00 до 19:00
- На пике: 11:00 - 17:00
Зимние будни (с 1 ноября по 30 апреля)
- Вне пик: с 19:00 до 07:00
- Середина пика: 11:00 - 17:00
- В часы пик: с 07:00 до 11:00 и с 17:00 до 19:00
Выходные дни
- Вне пик: весь день
YYYY-MM-DDThh[:mm[:ss]]
поскольку секунды могут быть применены, только если применяются минуты?