Antrenament OLI · clasa a 10-a · clasa a 10-a
Măriri pe intervale (OLI 10)
Cerință
Un șir de n elemente are inițial numai zerouri. Se fac q operații „adaugă x la toate elementele de la poziția a la poziția b”. Afișează șirul final.
Problemă originală de antrenament în stil OLI, clasa a 10-a, nu este subiect oficial.
Date de intrare
Prima linie: n și q. Următoarele q linii: a, b, x.
Date de ieșire
n numere separate prin spațiu. Nu afișa mesaje suplimentare.
Restricții
- 1 ≤ n, q ≤ 200 000
- −1000 ≤ x ≤ 1000
- Sunt 20 de teste, fiecare valorează 5 puncte.
1 1 1 1 325
325
Datele exemplului respectă formatul de intrare. Aplicăm ideea: Șirul diferențelor: d[a] += x, d[b+1] −= x, apoi sume parțiale. Rezultatul corect pentru acest exemplu este: 325.
2 2 1 2 -170 1 2 -878
-1048 -1048
Datele exemplului respectă formatul de intrare. Aplicăm ideea: Șirul diferențelor: d[a] += x, d[b+1] −= x, apoi sume parțiale. Rezultatul corect pentru acest exemplu este: -1048 -1048.
9 9 8 9 -477 4 5 -815 2 4 859 7 9 450 6 6 284 4 6 -729 1 6 -734 1 2 38 1 1 -958
-1654 163 125 -1419 -2278 -1179 450 -27 -27
Datele exemplului respectă formatul de intrare. Aplicăm ideea: Șirul diferențelor: d[a] += x, d[b+1] −= x, apoi sume parțiale. Rezultatul corect pentru acest exemplu este: -1654 163 125 -1419 -2278 -1179 450 -27 -27.
Probleme similare pe PbInfo
Exersează aceeași tehnică și pe PbInfo — acolo găsești și soluții oficiale.
- #1512 Mars — șmenul lui Mars
- #3844 KSum — SSM cu lungime minimă
- #2921 SumeSecv1 — sume parțiale
- #237 Sume — sume parțiale
- #3659 SumMaxSecv — suma costurilor
- #4205 SecvSumS — secvență de sumă S
- #3941 CountSumS — perechi de sumă S
- #4532 SumOfAll — suma subsecvențelor
- #1879 platou2 — secvență crescătoare
- #1639 Secvente3 — ONI 2013
- #2301 secv — ONI gimnaziu 2016
- #2510 vsecvente — lot juniori
- #1090 Secvente2
- #4423 secv2
- #3163 SecvMaxVal
- #334 secventa1 — clasice
- #50 secvmax — secvența de sumă maximă
- #315 secventa
- #190 secvk — secvențe de lungime k
- #217 platou1 — platouri