题解 | 中位数

中位数

https://www.nowcoder.com/practice/2364ff2463984f09904170cf6f67f69a

#include <iostream>
using namespace std;

int cmp(const void* a, const void* b) {
    return *(int*)a - *(int*)b;
}

int main() {
    int n;
    int a[10000];
    while (cin >> n) {
        if (n == 0)    break;
        for (int i = 0; i < n; i++) {
            cin >> a[i];
        }
        qsort(a, n, sizeof(int), cmp);
        if (n % 2) {
            cout << a[n / 2] << endl;
        } else {
            cout << (a[n / 2] + a[n / 2 - 1]) / 2 << endl;
        }
    }
    return 0;
}
// 64 位输出请用 printf("%lld")

全部评论

相关推荐

面向对象的火龙果很爱...:去吃一顿炸鸡就走
点赞 评论 收藏
分享
06-14 19:09
门头沟学院 Java
darius_:给制造业搞的,什么物料管理生产管理,设备管理点检,最最关键的就是一堆报表看板。个人觉得没啥技术含量都是些基本的crud,但是业务很繁琐那种
点赞 评论 收藏
分享
程序员小白条:这比例牛逼,750:1
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务