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.