Haz una función con la cabecera:
double mediana(const vector<int>& v);
que recibe un vector de enteros ordenado y retorna su mediana.
La mediana se define como el “valor central” de un vector ordenado. Es decir, es un elemento tal que tiene el 50% de elementos restantes por debajo y el otro 50% por encima. Si el vector de enteros tiene un número de elementos impar, la mediana es el elemento de enmedio. Si el vector tiene un número de elementos par, la mediana es la media aritmética entre los dos valores centrales.
Entrada
La función recibe un vector de enteros ordenado, que tiene como mínimo un elemento.
Salida
La función devuelve la mediana según la definición dada más arriba. Por esta definicion, la mediana de un vector de enteros puede ser un real.
Observación
El programa principal que utiliza el Jutge para probar el programa es:
vector<int> v; int n; while (cin >> n) { v.push_back(n); } sort(v.begin(), v.end()); cout.setprecision(2); cout << mediana(v) << endl;
Input
0 5 10
Output
5
Input
1 2 3 4
Output
2.5
Input
1 12 1 1 13 1 14 3 15
Output
3