这个题真的没什么好说的。一个排序就能解决的问题。唯一感到不爽的是这道题不是0msAC的,希望各位大神能够给我点指导。
头文件#include<algorithm>,注意一下排序函数的用法就行了。
我在HDU和POJ上测试了很多次,不得不说HDU确实比较坑爹。POJ上一组案例也是可以过的,当然,这不重要。
题意也简单,大致就是给一组数字要你求中位数。而且给的是奇数个数字。
1 #include<iostream> 2 #include<algorithm> 3 using namespace std; 4 5 int N,n[10000]; 6 7 int main() 8 { 9 10 while(cin>>N) 11 { 12 for(int i=0;i<N;i++)//注意如果从1开始的话后面的排序区间为[n+1,n+N+1) 13 cin>>n[i]; 14 sort(n,n+N);//排序区间是[n,n+N) 15 cout<<n[N/2]<<endl;//这里有隐式类型转换,本应该是n[(N-1)/2] 16 } 17 return 0; 18 }