Recordes de Temperatura

Você recebe dois arrays com as temperaturas mínimas e máximas dos mesmos sete dias da semana. Os elementos que ocupam o mesmo índice correspondem ao mesmo dia.

O array records contém as temperaturas mínima e máxima recordes de todos os tempos para cada dia:

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

O array currentWeek contém as temperaturas mínima e máxima da semana atual:

[[mínima diária, máxima diária], ...]

Uma temperatura máxima diária estabelece um novo recorde somente quando é maior que a máxima recorde daquele dia. Uma temperatura mínima diária estabelece um novo recorde somente quando é menor que a mínima recorde daquele dia. Compare os dois arrays e retorne os valores recordes, atualizando todos os recordes quebrados.

Exemplos

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

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

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

A mínima recorde anterior de segunda-feira era 24, e a mínima atual era 19, portanto 19 passa a ser a nova mínima recorde de segunda-feira.

Observações

  • Pode haver vários novos recordes em uma mesma semana.
  • Se nenhum recorde for quebrado, retorne os valores recordes originais.
  • O índice 0 sempre corresponde à mínima e o índice 1 sempre corresponde à máxima: [mínima, máxima].
  • Uma máxima recorde e uma mínima recorde não serão estabelecidas no mesmo dia.
  • As temperaturas estão em graus Fahrenheit, mas nenhuma conversão é necessária.