Sol y Luna en Nochebuena

Descripción
Es Nochebuena y el invierno ha llegado con fuerza. La nieve cubre las calles y el sol apenas aparece entre las nubes. Sol y Luna, dos perritas salchicha muy friolentas, pasan el día acurrucadas esperando un poco de calor. Carlos, su dueño, quiere cuidarlas durante toda la Navidad: sabe exactamente en qué momentos del día hará más frío, cuándo habrá algo de calorcito y cuál será la temperatura en cada instante.
Cada perrita tiene su propia sensación térmica:
- Siente FRÍO si la temperatura \(T \leq A\).
- Siente CALOR si la temperatura \(T \geq B\).
- Está BIEN si \(A < T < B\).
Carlos decide cuándo ponerles la cobija navideña y cuándo quitársela. Tu tarea es simular estos momentos y ayudar a Carlos a organizar un reporte cronológico y un resumen ordenado por prioridad de frío.
Entrada
Primero se te dará un número entero \(N\) — el número de momentos del día: \(1 \leq N \leq 1,440\).
La segunda línea contiene dos enteros \(AS\) y \(BS\) — los umbrales de frío y calor de Sol. La tercera línea contiene dos enteros \(AL\) y \(BL\) — los umbrales de frío y calor de Luna.
Las siguientes \(n\) líneas describen cada momento:
- \(T_i\) — Un entero representando la temperatura.
Límites: \(-5 \leq AS, BS, AL, BL, T_i \leq 26\). Se garantiza \(A < B\) para ambas perritas.
Salida
Debes imprimir dos bloques de mensajes:
Bloque 1: Crónica de Nochebuena
\(N\) líneas describiendo el evento ocurrido en cada momento \(i\) (del \(1\) al \(N\)).
- Si alguna siente frío: Si solo una siente frío se imprime el mensaje, si las dos sienten frio se elige a la perrita con umbral \(A\) más cercano a \(T_i\). Si hay empate, la de menor umbral \(A\). Si persiste, Sol.
Mensaje:
<Nombre> necesita cobija, faltaron X grados para no tener friodonde \(X = A + 1 - T_i\). - Si ninguna siente frío, pero alguna siente calor: Si solo una siente calor se imprime el mensaje, si las dos sienten calor se elige a la de umbral \(B\) más cercano a \(T_i\). Si hay empate, la de menor umbral \(B\). Si persiste, Sol.
Mensaje:
<Nombre> tuvo calor, faltaron X grados para no tener calordonde \(X = T_i - (B - 1)\). - Si ambas están bien:
- Si está más cerca del frío:
ESTAN BIEN, pero casi tuvieron frio (faltaron X grados). - Si está más cerca del calor:
ESTAN BIEN, pero casi tuvieron calor (faltaron X grados). - Si la distancia al frío y al calor es igual:
ESTAN BIEN, clima perfecto. - Para calcular \(X\), Carlos toma la distancia más pequeña hacia el frío (entre Sol y Luna) y la distancia más pequeña hacia el calor (entre Sol y Luna). El valor de \(X\) será la menor de estas dos distancias resultantes.
- Matemáticamente:\[X = \min(\min(T_i - AS, T_i - AL), \min(BS - T_i, BL - T_i))\]
- Si está más cerca del frío:
Bloque 2: Resumen junto a la Chimenea
Imprime los mismos eventos del Bloque 1, pero ordenados bajo estos criterios:
- Temperatura \(T_i\) de menor a mayor.
- Tipo de sensación: Frío < Bien < Calor.
- Sujeto: Sol < Luna < Ninguna.
- Orden original de aparición.
Cada línea debe iniciar con el índice original: i <Mensaje>.
Importante: estas reglas reflejan que Carlos revisa primero los momentos más helados, luego los tranquilos y al final los más calurosos, dando siempre prioridad a Sol si hay cualquier empate.
Ejemplo
Entrada
4
4 13
6 13
13
-1
8
9
Salida
Sol tuvo calor, faltaron 1 grados para no tener calor
Sol necesita cobija, faltaron 6 grados para no tener frio
ESTAN BIEN, pero casi tuvieron frio (faltaron 2 grados)
ESTAN BIEN, pero casi tuvieron frio (faltaron 3 grados)
2 Sol necesita cobija, faltaron 6 grados para no tener frio
3 ESTAN BIEN, pero casi tuvieron frio (faltaron 2 grados)
4 ESTAN BIEN, pero casi tuvieron frio (faltaron 3 grados)
1 Sol tuvo calor, faltaron 1 grados para no tener calor
Comments
Te amo Solecito y Lunaaaaa. <3