Menu
CoddyTech

Daily Temperatures

temperatures[i] è la temperatura del giorno i. Per ogni giorno, conta quanti giorni devi aspettare dopo quel giorno prima che arrivi un giorno strettamente più caldo, oppure 0 se in seguito non arriva nessun giorno più caldo. Restituisci un array della stessa lunghezza, in cui la voce i indica l’attesa per il giorno i.

Funzione

dailyTemperatures(temperatures: integer-array) → integer-array
temperaturesinteger-array
la temperatura di ogni giorno, in ordine
Restituisceinteger-array
per ogni giorno, il numero di giorni che mancano a uno più caldo, oppure 0 se non ce n’è nessuno

Vincoli

  • 1 ≤ temperatures.length ≤ 104
  • 30 ≤ temperatures[i] ≤ 100
  • Più caldo significa strettamente più alto: un giorno successivo con la stessa temperatura non conta.

Esempi

Input
temperatures = [71, 69, 72, 70, 70, 75, 68]
Output
[2, 1, 3, 2, 1, 0, 0]
Spiegazione
Il giorno 0 (71) attende 2 giorni per il 72. Il giorno 3 (70) salta il 70 uguale del giorno 4 e attende 2 giorni per il 75. Dopo il 75 o il 68 non c’è nulla di più caldo, quindi entrambi ottengono 0.
challenge icon

Per approfondire

Le temperature assumono solo 71 valori, da 30 a 100. In che modo una tabella indicizzata per temperatura potrebbe rispondere ogni giorno in un unico passaggio da destra a sinistra, e a quale costo?

Ripristina il codice
def dailyTemperatures(temperatures):
    # Scrivi il codice qui

Test #1

Test #2

Test #3

Argomento

temperatures = [71, 69, 72, 70, 70, 75, 68]

Output atteso

[2, 1, 3, 2, 1, 0, 0]