当前位置: 首页 > news >正文

openJudge | 中位数 C语言

总时间限制: 2000ms 内存限制: 65536kB

描述

中位数定义:一组数据按从小到大的顺序依次排列,处在中间位置的一个数或最中间两个数据的平均值(如果这组数的个数为奇数,则中位数为位于中间位置的那个数;如果这组数的个数为偶数,则中位数是位于中间位置的两个数的平均值).
给出一组无序整数,求出中位数,如果求最中间两个数的平均数,向下取整即可(不需要使用浮点数)

输入

该程序包含多组测试数据,每一组测试数据的第一行为N,代表该组测试数据包含的数据个数,1 <= N <= 15000.
接着N行为N个数据的输入,N=0时结束输入

输出

输出中位数,每一组测试数据输出一行

样例输入

4
10
30
20
40
3
40
30
50
4
1
2
3
4
0

样例输出

25
40
2

答案

#include <stdio.h>
int main() {int n, a[15000], t;while(scanf("%d", &n), n != 0) {for(int i = 0; i < n; i++) {scanf("%d", &a[i]);}for(int i = 0; i < n-1; i++) {for(int j = i+1; j < n; j++) {if(a[i] > a[j]) {t = a[i];a[i] = a[j];a[j] = t;}}}for(int *p = a, *q = a + (n-1); p <= q; p++, q--) {if(p == q) {printf("%d\n", *p);} else if(q - p == 1) {printf("%d\n", (*p+*q)/2);}}}
}
http://www.lryc.cn/news/300834.html

相关文章:

  • ctfshow-文件上传(web151-web161)
  • cudnn免登录下载
  • SQLyog安装配置(注册码)连接MySQL
  • java+SSM+mysql 开放式实验管理系统78512-计算机毕业设计项目选题推荐(免费领源码)
  • 代码随想录算法训练营第三十三天|1005.K次取反后最大化的数组和、134.加油站、135.分发糖果
  • 解决LeetCode编译器报错的技巧:正确处理位操作中的数据类型
  • 一周学会Django5 Python Web开发-Django5操作命令
  • 反转链表【基础算法精讲 06】
  • Git 初学
  • 智胜未来,新时代IT技术人风口攻略-第四版(弃稿)
  • 渗透专用虚拟机(公开版)
  • HCIA-HarmonyOS设备开发认证V2.0-3.2.轻量系统内核基础-时间管理
  • 嵌入式培训机构四个月实训课程笔记(完整版)-Linux ARM驱动编程第五天-ARM Linux编程之file_operations详解 (物联技术666)
  • 第9章 网络编程
  • Python setattr函数
  • [C#]winform制作仪表盘好用的表盘控件和使用方法
  • 探索弗洛姆的思想:人类本质与爱的哲学
  • 【碎片知识点】安装Linux系统 VMware与kali
  • Android 车载应用开发之SystemUI 详解
  • C# CAD-Xdata数据 添加(一)
  • 【NLP】MHA、MQA、GQA机制的区别
  • nginx upstream server主动健康监测模块添加https检测功能
  • OCP的operator——(4)用户任务:使用Operator创建etcd集群
  • win7自带截图工具保存失效解决办法
  • Android14之Android Rust模块编译语法(一百八十七)
  • 分布式文件系统 SpringBoot+FastDFS+Vue.js【三】
  • 【深度学习每日小知识】全景分割
  • 机器人能否返回原点
  • Mysql5.6忘记密码,如何找回(windows)
  • 算法训练营day29, 贪心算法3