题解 | #中位数#

中位数

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

#include <iostream>
#include <cstdio>
#include <algorithm>
#include <string>
using namespace std;

int main() {
    int N;//包含的数据个数
    int arr[10001]; //数据存放的数组
    while(scanf("%d", &N) != EOF){
        if(N == 0){
            break;
        }
        for(int i = 1; i <= N; i++){
            scanf("%d", &arr[i]);
        }
        sort(arr+1, arr + N+1); // 从小到大排序数组
        if(N % 2 == 0){
            //偶数情况
            printf("%d\n", (arr[(N / 2)] + arr[N / 2 + 1]) / 2);
        }else{
            //奇数情况
            printf("%d\n", arr[N / 2 + 1]);
        }
    }
}
// 64 位输出请用 printf("%lld")

全部评论

相关推荐

11-11 14:21
西京学院 C++
无敌混子大王:首先一点,不管学校层次怎么样,教育经历放在第一页靠上位置,第一页看不到教育经历,hr基本直接扔掉了
点赞 评论 收藏
分享
评论
点赞
收藏
分享
牛客网
牛客企业服务