uva 10107 What is the Median?
程序员文章站
2022-06-02 22:23:45
...
题意:
不断添加整数n到数组,每次输出当前所有数的中位数
代码:
#include <iostream>
#include<cmath>
#include<algorithm>
using namespace std;
int num[10000];
int main()
{
int n,i=0,length=0,median;
while(cin>>n)
{
num[i++]=n;
length++;//数组长度加一
sort(num,num+length);//每次添加后重新排序
if(length==1)//只有一个数时输出自身
cout<<num[0]<<endl;
else
{
if(length%2==0)//有偶数个数
{
median=(num[(length-1)/2]+num[length/2])/2;
}
else//有奇数个数
{
median=num[length/2];
}
cout<<median<<endl;
}
}
return 0;
}