Pregătire XI–XII · clasa a 11-a
Tăierea barei
Cerință
O bară are lungimea n. O bucată de lungime k se vinde cu prețul p[k]. Bara se poate tăia în bucăți de lungimi naturale (sau se poate vinde întreagă). Care este câștigul maxim?
Problemă originală de antrenament, nu este subiect oficial.
Date de intrare
Prima linie: n. A doua linie: p[1], p[2], ..., p[n].
Date de ieșire
Câștigul maxim (long long). Nu afișa mesaje suplimentare.
Restricții
- 1 ≤ n ≤ 5000
- 1 ≤ p[k] ≤ 10^6
- Sunt 20 de teste, fiecare valorează 5 puncte.
1 329943
329943
Datele exemplului respectă formatul de intrare. Aplicăm ideea: d[i] = max peste k de p[k] + d[i−k]. Complexitate O(n²). Rezultatul corect pentru acest exemplu este: 329943.
2 45605 456595
456595
Datele exemplului respectă formatul de intrare. Aplicăm ideea: d[i] = max peste k de p[k] + d[i−k]. Complexitate O(n²). Rezultatul corect pentru acest exemplu este: 456595.
4 987287 2840 585721 742515
3949148
Datele exemplului respectă formatul de intrare. Aplicăm ideea: d[i] = max peste k de p[k] + d[i−k]. Complexitate O(n²). Rezultatul corect pentru acest exemplu este: 3949148.
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