题解 | #中位数#

中位数

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

//程序总不通过的原因可能是没有注意到边界条件,除了n=0之外,n停止输入也是退出循环的条件!!!
#include<iostream>
#include<algorithm>
using namespace std;

int main(){
	int n;
	//scanf("%d",&n);
	while( cin>>n && n!=0 ){   //特别注意边界条件,除了n=0之外,n停止输入也是退出循环的条件!!!
		int a[10000];
		for(int i=0;i<n;i++){
			scanf("%d",&a[i]);
		}
		sort(a,a+n);
		if(n%2==0){
			int k=(a[n/2-1]+a[n/2])/2;
			cout<<k<<endl;
		}
		else{
			int k=a[n/2];
			cout<<k<<endl;
		}
		//scanf("%d",&n);
	}
	return 0;
} 

全部评论

相关推荐

今天 11:41
门头沟学院 Java
点赞 评论 收藏
分享
昨天 12:22
门头沟学院 Java
点赞 评论 收藏
分享
程序员小白条:主要没亮点,项目也是网上的,平平无奇,那只能海投了,奖项总得有一些,然后就是现在最好是前后端都会,自己能做项目并且运维的,要么找星球项目改改,要么找个开源项目改改,自己能拓展功能才是主要的,跟做效率很低很低
点赞 评论 收藏
分享
评论
1
收藏
分享

创作者周榜

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