Escriviu una funció eficient
int mes_a_la_dreta(double x, const vector<double>& v);
que retorni la posició més a la dreta on podria ser inserit en el vector ordenat (afegint una posició al final de i movent els elements que calgui una posició cap a la dreta) de manera que romangui ordenat.
Per exemple, assumiu que és 23. Si és , hauríem d’inserir a la posició 3 (entre 20 i 30), i el resultant seria . Si és , podríem inserir a les posicions 1, 2 o 3, així que la vostra funció ha de retornar 3. Si és , hauria de ser inserit a la posició just a la dreta del final del vector, això és, 4. Com a exemple final, si és , hauria de ser inserit a 2.
El vector està ordenat en ordre no-decreixent.
La vostra solució només pot usat la llibreria
vector.
Podeu escriure i usar funcions addicionals si us calen.
Només cal enviar el procediment requerit; el programa principal serà ignorat.