76
Se consideră subalgoritmul ceFace() definit alăturat. Șirul a de lungime n este citit de la tastatură, iar șirul sp este inițializat cu 0. Funcția max(a, b) returnează maximul dintre numerele a și b.
Algoritm 1
Algorithm ceFace()
c ← a[0]
sp[0] ← a[0]
If c < 0 then c ← 0 EndIf
For i ← 1, n − 1 execute
c ← c + a[i]
sp[i] ← max(sp[i − 1], c)
If c < 0 then c ← 0 EndIf
EndFor
c ← a[n − 1]
b ← a[n − 1]
If c < 0 then c ← 0 EndIf
d ← b + sp[n − 2]
For i ← n − 2 to 1, −1 execute
c ← c + a[i]
If b < c then b ← c EndIf
If c < 0 then c ← 0 EndIf
d ← max(d, b + sp[i − 1])
EndFor
Output d
EndAlgorithmCare dintre următoarele afirmații sunt adevărate?
10 / 60