转载请注明出处:優YoU http://user.qzone.qq.com/289065406/blog/1300777154
水题一道
给定n个数,输出中间值(注意不是求平均)
可以用sort,干脆快捷,但是注意排序起止位置
也可以用quicksort,(最好用随机快排,尝试一下srand和rand) 勤力的同学可以写一下\(^o^)/~
没什么要注意的题,不过真要注意的话,就不要用冒泡、插入、选择排序之类的O(n^2)算法,1W个数铁定超
再送一些数据给大家
11
76 67 43 78 02 11 379 478 11 43 21
9
3 1 38 222 800 43 45 69 987332
3
1000000 100000 90000
5
90000 20000 30000 15000 80000
1 //Memory Time
2 //292K 47MS
3
4 #include<iostream>
5 #include<iomanip>
6 #include<algorithm>
7 using namespace std;
8
9 int main(void)
10 {
11 int n;
12 while(cin>>n)
13 {
14 int* milk=new int[n+1];
15
16 for(int i=1;i<=n;i++)
17 cin>>milk[i];
18
19 sort(milk+1,milk+n+1);
20
21 cout<<milk[n/2+1]<<endl;
22
23 delete milk;
24 }
25 return 0;
26 }