您的位置:首页 > 其它

POJ之路13-POJ2388

2015-07-04 13:36 246 查看
一、poj2388

求取中位数,即排序然后输出中间的数即可。一次ac的代码如下:

//79ms
#include<string>
#include<fstream>
#include<algorithm>
using namespace std;

int main()
{
//	ifstream cin("data.txt");
int n,i;
int a[10001];
cin>>n;
for(i=0;i<n;i++)
{
cin>>a[i];
}
sort(a,a+n);
cout<<a[n/2]<<endl;
return 0;
}
或者用快排,代码如下:

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

int cmp(void const*a,void const*b)
{
return *(int*)a-*(int*)b;
}

int main()
{
//	ifstream cin("data.txt");
int n,i;
int a[10001];
while(cin>>n)
{
for(i=0;i<n;i++)
{
cin>>a[i];
}
qsort(a,n,sizeof(a[0]),cmp);
cout<<a[n/2]<<endl;
}

return 0;
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: