题解 | #中位数#

中位数

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

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

int main() {
    int n;
    while (cin >> n&&n!=0) 
    { // 注意 while 处理多个 case
       int *a=(int *)malloc(sizeof(n));
       for(int i=0;i<n;i++)cin>>a[i];
       sort(a,a+n);
       //cout<<"n="<<n<<endl;
        if(n%2==1)
        {
            cout<<a[n/2]<<endl;
        }
         else 
       {
            int mid=(a[n/2-1]+a[n/2])/2;
            cout<<mid<<endl;
       }
    }
}
// 64 位输出请用 printf("%lld")

全部评论

相关推荐

01-11 08:47
门头沟学院 Java
choumoduji...:读研的目的就是为了以最快的速度和最低的要求完成“学校”规定的毕业标准,而不是所谓课题组的要求
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

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