Я участвую в программировании, и для проекта, над которым я работаю, мне нужно вычислить медианное значение вектора значений int. Я должен сделать это, используя только функцию сортировки из функций STL и векторных членов, таких как .begin()
, .end()
и .size()
.
Я также должен убедиться, что я нашел медианную информацию о том, имеет ли вектор нечетное число значений или четное число значений.
И я Stuck, ниже я включил свою попытку. Так где я иду не так? Я был бы признателен, если бы вы были готовы дать мне несколько указателей или ресурсов, чтобы идти в правильном направлении.
Код:
int CalcMHWScore(const vector<int>& hWScores)
{
const int DIVISOR = 2;
double median;
sort(hWScores.begin(), hWScores.end());
if ((hWScores.size() % DIVISOR) == 0)
{
median = ((hWScores.begin() + hWScores.size()) + (hWScores.begin() + (hWScores.size() + 1))) / DIVISOR);
}
else
{
median = ((hWScores.begin() + hWScores.size()) / DIVISOR)
}
return median;
}
Спасибо!!