题解 | #中位数#

中位数

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

#include <stdio.h>
#include <stdlib.h>
#define MAX 1000
int compare(const void* a,const void* b)
{
    int num1=*((int*)a);
    int num2=*((int*)b);
    return num1-num2;
}
int main()
{
    int data[MAX];
    int n;
    while(scanf("%d",&n)!=EOF&&n>0)
    {
    int num=0;
    for(int i=0;i<n;i++)
    {
        scanf("%d",&data[i]);
    }
    qsort(data,n,sizeof(int),compare);
    if(n%2==1)
    {
        num=data[(n-1)/2];
    }
    else
    {
        num=(data[(n-1)/2]+data[(n+1)/2])/2;
    }
    printf("%d ",num);
    }
    return 0;
}


全部评论

相关推荐

11-28 17:58
门头沟学院 Java
美团 JAVA开发 n×15.5
牛客786276759号:百度现在晋升很难的 而且云这块的业务没美团好 你看百度股价都跌成啥样了
点赞 评论 收藏
分享
牛客279957775号:铁暗恋
点赞 评论 收藏
分享
10-28 14:42
门头沟学院 Java
watermelon1124:因为嵌入式炸了
点赞 评论 收藏
分享
昨天 17:22
已编辑
西安交通大学 Java
华为 昇腾 ai软件开发 薪资20k x (14-16),职级13A,5%公积金,c/cpp
BLOOMING7:闭眼滴滴,华子给的又少又累
点赞 评论 收藏
分享
评论
点赞
收藏
分享
牛客网
牛客企业服务