Récords de temperatura

Se te dan dos arreglos de temperaturas mínimas y máximas para los mismos siete días de la semana. Las entradas que ocupan el mismo índice corresponden al mismo día.

El arreglo records contiene los récords históricos de temperatura mínima y máxima de cada día:

[[mínima histórica, máxima histórica], ...]

El arreglo currentWeek contiene las temperaturas mínimas y máximas de la semana actual:

[[mínima diaria, máxima diaria], ...]

Una temperatura máxima diaria establece un nuevo récord solo si es mayor que el récord de máxima de ese día. Una temperatura mínima diaria establece un nuevo récord solo si es menor que el récord de mínima de ese día. Compara los dos arreglos y devuelve los récords, actualizando cada valor que haya superado uno.

Ejemplos

int[][] records = new int[][] {
  { 34, 82 },
  { 24, 82 },
  { 20, 89 },
  { 5, 88 },
  { 9, 88 },
  { 26, 89 },
  { 27, 83 }
};

int[][] currentWeek = new int[][] {
  { 44, 72 },
  { 19, 70 },
  { 40, 69 },
  { 39, 68 },
  { 33, 64 },
  { 36, 70 },
  { 38, 69 }
};

Program.recordTemps(records, currentWeek);
// ➞ new int[][] {
//     { 34, 82 },
//     { 19, 82 },
//     { 20, 89 },
//     { 5, 88 },
//     { 9, 88 },
//     { 26, 89 },
//     { 27, 83 }
//   }

El récord anterior de temperatura mínima del lunes era 24 y la mínima actual fue 19, por lo que 19 pasa a ser el nuevo récord de mínima del lunes.

Notas

  • Puede haber varios récords nuevos en una misma semana.
  • Si no se supera ningún récord, devuelve los valores originales.
  • El índice 0 siempre corresponde a la mínima y el índice 1, a la máxima: [mínima, máxima].
  • No se establecerán un récord de máxima y uno de mínima el mismo día.
  • Las temperaturas están expresadas en grados Fahrenheit, pero no es necesario convertirlas.