您的位置:首页 > 其它

POJ 2388

2015-07-12 05:22 330 查看
还是水题,简单的排序。大半夜的,没脑子想太复杂的代码了,就随手找了段以前写的插入排序将就着用了。

题目的意思就是取一个数列的中位数,很简单,排序后取a[n/2]即可。

代码如下:

#ifndef _2388_H
#define _2388_H

#include "stdio.h"

#define ARRAY_LENGTH 10000

int array[ARRAY_LENGTH];

void insertSort(int array[ARRAY_LENGTH], int len) {
int i, j, key;
for (j = 1; j < len; j++) {
i = j - 1;
key = array[j];
while (i >= 0 && array[i] > key) {
array[i + 1] = array[i];
i--;
}
array[i + 1] = key;
}
}

void process(){
int n, i = 0;
scanf_s("%d", &n);
for (; i < n; i++){
scanf_s("%d", &array[i]);
}
insertSort(array, n);
printf("%d\n", array[n / 2]);
}
#endif
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: