Heu d’implementar una funció que rep un vector de naturals que té dues parts, una primera part estrictament creixent i una segona part estríctament decreixent. En altres paraules, existeix un índex vàlid del vector tal que, per a tot anterior a es cumpleix , i per a tot posterior a es cumpleix . Es garanteix que el vector té com a mínim tres elements i que el seu valor màxim (és a dir , per al que hem mencionat) no es troba ni exactament al principi ni exactament al final.
La funció haurà de retornar el valor màxim de . Aquesta és la capcelera:
// Pre: Let n be v.size(). Then n >= 3 and for all i in {0..n-1}, v[i] >= 0.
// Also, there exists i in {1..n-2} such that v[0..i] is strictly increasing and
// v[i..n-1] is strictly decreasing.
// Post: Returns the maximum value of v.
int summitOfMountain(const vector<int> &v);
Només cal enviar el procediment demanat; el programa principal serà ignorat.
Avaluació sobre 10 punts:
Solució lenta: 5 punts.
solució ràpida: 10 punts.
Entenem com a solució ràpida una que és correcta, de cost logarítmic i capaç de superar els jocs de proves públics i privats. Entenem com a solució lenta una que no és ràpida, però és correcta i capaç de superar els jocs de proves públics.
Autoria: PRO1
Generació: 2026-01-25T15:13:47.087Z
© Jutge.org, 2006–2026.
https://jutge.org