← 查看本卷题目
组合题5 个小题
已作答 0 / 5

完善程序: (中位数 median) 给定 nn(nn 为奇数且小于 10001000)个整数,整数的范围在 0∼m(0<m<231)0\sim m(0<m<2^{31}) 之间,请使用二分法求这 nn 个整数的中位数。所谓中位数,是指将这 nn 个数排序之后,排在正中间的数。(第五空 22 分,其余 33 分)

#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 (①)    {        mid = (lbound + rbound) / 2;        ②;        for (i = 0; i < n; i++)            if (③)                ④;        if (count > n / 2)            lbound = mid + 1;        else            ⑤;        cout << mid << " " << lbound << " " << rbound << " " << count << endl;    }    cout << rbound << endl;    return (0);}
第 35 题填空题

④处应填( )

填写答案