Un vector V és un vector que està compost de dues parts:
tals que està ordenat de manera escrictament decreixent i està ordenat de manera escrictament creixent. A més, . Finalment tenim que . És a dir, cap de totes dues parts és buida.
Cal implementar la funció
void ordena(const vector<int>& v, int pos, vector<int>& r)
amb la següent especificació:
PRE:
és un vector V tal que
,
és la posició en què es troba
a
i
.
POST: El vector
conté tots els elements del vector
i està ordenat.
Només cal que envieu la funció que us demanem i les accions i funcions que vosaltres mateixos definiu. La resta no es tindrà en compte.
No es pot fer servir l’operació sort de la biblioteca
stl.
Pista: saber la posició en què es troba us pot ajudar a ordenar el vector en temps lineal.
IMPORTANT: Només cal que envieu la funció que us
demanem i les accions i funcions que vosaltres mateixos definiu.
Mantingueu, però, les definicions de tipus i els
#includes.
Un nombre indeterminat de vectors V amb el següent format: un enter que n’indica la mida, després el vector V, després la posició on es troba a i finalment un vector de la mateixa mida que . Tot vector V té una mida més gran o igual a 3.
El vector està ordenat i conté tots els elements de .
Autoria: PRO1
Generació: 2026-01-25T23:07:30.570Z
© Jutge.org, 2006–2026.
https://jutge.org