概述
题目来源
题目描述
老师给了你n个整数组成的测量数据,保证有序(可能为升序或降序),可能存在重复的数据。请统计出这组测量数据中的最大值、中位数以及最小值,并按照从大到小的顺序输出这三个数。
输入格式
从标准输入读入数据。第一行输入一个整数n,在第二行中存在n个有序的整数,表示测量数据,可能为升序或降序排列,可能存在连续多个整数相等,整数与整数之间使用空格隔开。
输出格式
输出到标准输出。包含一行,包括最大值、中位数以及最小值共三个数,并按照从大到小的顺序输出。数据与数据之间使用空格隔开。对于整数请直接输出整数,对于可能出现的分数,请输出四舍五入保留1位小数的结果。
样例输入1
3
-1 2 4
样例输出1
4 2 -1
样例输入2
4
-2 -1 3 4
样例输出2
4 1 -2
提交代码
#include
#include
using namespace std;
int main()
{
int i, n, x, max, min;
float med=0;
cin >> n;
cin >> x;
min = max = x;
for (i = 1; i < n; i++)
{
cin >> x;
min = (x <= min) ? x : min;
max = (x >= max) ? x : max;
if (n % 2 != 0 && i == ((n + 1) / 2 - 1))
med = x;
if (n % 2 == 0)
if (i == (n / 2 - 1) || i == n / 2)
med+=x/2.0;
}
if (n == 1)
med = x;
cout << max << " ";
if (med == int(med))
cout << int(med);
else
cout << fixed << setprecision(1) << med;
cout<
return 0;
}
运行结果
评测通过,得分为:100.0,以下为详细信息:
用户名
试题名称
代码长度
编程语言
评测结果
得分
时间使用
空间使用
XavierJ
小中大
548B
C++
正确
100
140ms
532.0KB
温馨提示
要确保程序中没有“请输入n”之类的输入输出提示,也没有输出中间的结果,所有的输出内容都与题设中的输出格式相对应。我的输出格式(包括换行和大小写等)与题设中输出格式的要求相符。
最后
以上就是拼搏乌冬面为你收集整理的java 找序列最小值_【C++编程练习】任意给定 n 个有序整数,求这 n 个有序整数序列的最大值,中位数和最小值...的全部内容,希望文章能够帮你解决java 找序列最小值_【C++编程练习】任意给定 n 个有序整数,求这 n 个有序整数序列的最大值,中位数和最小值...所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
发表评论 取消回复