Este es mi primer código de golf, así que avíseme si es demasiado amplio o si me falta información para un buen rompecabezas.
Desafío
En Ontario y posiblemente en otras áreas del mundo, la electricidad se factura utilizando el precio por tiempo de uso (TOU) , que varía el costo por kilovatio-hora según el uso de la energía.
Dada una fecha y hora, quiero saber si estoy en un período de tiempo pico (rojo), medio pico (amarillo) o fuera de pico (verde).
Entrada
Suponga que la entrada se proporciona en un formato de fecha y hora ISO 8601 sin zona horaria aceptable con la precisión mínima de horas: YYYY-MM-DDThh[:mm[:ss]]
(la T es literal).
Ejemplos
- 2014-09-01T14
- 2014-09-01T17: 30
- 2014-09-01T17: 30: 02
Salida
La salida debe ser una cadena On
, Mid
o Off
.
Reglas
- El código más corto gana
- Para los propósitos de este desafío, ignore las vacaciones legales
- Asume la información encontrada en esta publicación. Las reglas reales de fijación de precios por tiempo de uso pueden cambiar en el futuro por el Ministerio de Energía de Ontario.
Información
Días laborables de verano (del 1 de mayo al 31 de octubre)
- Fuera de horas punta: 19h00 - 07h00
- Pico medio: 07h00 - 11h00 y 17h00 - 19h00
- En horas pico: 11h00 - 17h00
Días laborables de invierno (del 1 de noviembre al 30 de abril)
- Fuera de horas punta: 19h00 - 07h00
- Pico medio: 11h00 - 17h00
- En horas pico: 07h00 - 11h00 y 17h00 - 19h00
Fines de semana
- Fuera de horas punta: todo el día
YYYY-MM-DDThh[:mm[:ss]]
ya que los segundos solo se pueden aplicar si se aplican minutos?