Ois_barrels idee

La soluzione naive prende 40/100, com’è giusto che sia.
Sono convinto che l’approccio corretto sia fare una specie di lazy propagation, cioè aggiornare il valore di un barile solo quando sono obbligato a farlo, però non ho la minima idea di come gestire le operazioni considerando che ogni barile dipende da tutti quelli precedenti. Un aiutino?

Cerca una struttura dati che ti permetta in modo efficiente di trovare per ogni query l’effettivo barile interessato senza passare per tutti

Anche senza particolari strutture dati, ma gestendo bene gli estremi dell’intervallo si riesce a fare 100/100.
Comunque con una struttura dati per gestire gli intervalli si dovrebbe andare molto più veloci.