#NOIP2015J1Q33. [NOIP 2015 普及组初赛] 第 33 题

[NOIP 2015 普及组初赛] 第 33 题

(中位数) 给定 n(n为奇数且小于 1000)个整数,整数的范围在 0〜m(0 < m < 2 31 )之间,

								请使用二分法求这 n个整数的中位数。所谓中位数,是指将这 n个数排序之后, 排在正中间的数。
#include <iostream>
using namespace std;

const int MAXN = 1000;
int n, i, lbound, rbound, mid, m, count;
int x[MAXN];

int main(){
    cin >> n >> m;
    for (i = 0; i < n; ++i)
        cin >> x[i];
    lbound=0;
    rbound=m;

    while (【第1空】) {
        mid = (lbound + rbound)/2;
        【第2空】;
        for(i = 0; i < n; i++)
            if (【第3空】)
                【第4空】;
        if(count > n / 2) lbound = mid + 1;
        else
            【第5空】;
    }
    cout << rbound << endl;
    return 0;
}

请填写【第2空】。

{{ input(1) }}